17  duplicate symbols for architecture armv7s

用cocoapods 的时候出现,这种错误一般是由重复引用库文件引起。

原因:自己尝试添加Reachability的时候,用import ""导入, 发现没又Reachability.h文件,就到link binary with libs里添加了Reachability静态库。

使用cocoapod 文件都是以import <> 方式导入,删掉project里添加的,无需添加,直接引用即可。

16  cocoapods error: incompatible character encodings: UTF-8 and ASCII-8BIT. Updating CocoaPods might fix the issue.

  文本文件中的单引号自动变成了中文的单引号,理所当然编码会出现问题。

15 删除添加的代码片段

xcode 中添加了代码片段,要删除的步骤。

1.选中代码片段。 2. 点击键盘delete 键。

14.mutating method sent to immutable object'

从字面上理解:可变的消息发给了不可变的对象。比如NSDictionary类型的对象调用setValue方法.应该把NSDictionary 改成NSMutableDictionary类型

13。'NSInvalidArgumentException', reason: '+[GMSCameraPosition cameraWithLatitude:longitude:zoom:]: unrecognized selector sent to class

   在build setting 的Other Linker Flags中设置为-ObjC

12.The operation couldn’t be completed. (com.google.HTTPStatus error 400.)

在谷歌map api 没设置好。步骤:在developer console中心,

1:将 Google Maps SDK for iOS 的功能打开,

2.申请与你ios项目对应boundle ID 的App Key。

一般app key在申请过程有几个小时才能生效。确定生效后才能调用地图。

11.udp 锁屏 导致出新中断信号

今天终于确定了,原来ios在锁屏之后,重新解锁,这个过程会导致socket失效。 之前 的表现就是锁屏,解锁之后,程序直接crash。(其实是解锁之后,发送第一个包,在sendto之后会导致crash)。

目前的解决办法是,重新创建了一个socket,close了之前的。

这好像是因为ios的锁屏和按home键,最终的状态时不一样的, home键会导致程序进入后台,也就是background状态。

10. self.mapview = [BMKMapView alloc]init]; 报exc_bad_access 错误。

通常这个是因为内存释放导致,但是在百度ios7上出现这个错误。原因是mapapi.bundle 不存在,或者不是最新版本,尝试把mapapi.bundle拖到百度地图sdk中。运行。

9. iOS7 xcode5 百度地图Api出现-[__NSCFString stringFromMD5]: unrecognized selector sent to

other linker  flags 添加 -all_load参数。
 Project ->build settings ->linking->Other Linker flags

8.ios 7兼容

http://diwu.me/2013/09/23/ios7jie-mian-guo-du/

7. UITapGestureRecognizer手势和tableview 触摸选择事件不兼容解决办法。

原因:

  若view 中加了UITapGestureRecognizer手势和tableview ,UITapGestureRecognizer手势调用后,就不会继续往下传递(被拦截),这导致了tableview的点击事件失效。

解决:

  1.手势设置委托方法。

UITapGestureRecognizer *tap =[[UITapGestureRecognizeralloc]initWithTarget:selfaction:@selector(btnClicked:)];

tap.delegate =self;

tap.numberOfTapsRequired =1;

[self.viewaddGestureRecognizer:tap];

2.在回调方法中进行判断,若触摸的是tableviewcell的contentview,着不响应。使得事件往下传递。

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch

{

// 输出点击的view的类名

NSLog(@"%@", NSStringFromClass([touch.viewclass]));

// 若为UITableViewCellContentView(即点击了tableViewCell),则不截获Touch事件

if ([NSStringFromClass([touch.viewclass]) isEqualToString:@"UITableViewCellContentView"]) {

return NO;

}

return  YES;

}

6"ld: library not found for -l...." 问题的解决

现象:

  在编译工程时,有时会遇到类似“ld: library not found for -l....”的错误提示。

原因:

  通常这是由于工程在编译时找不到需要的链接库而导致的。

解决方法:

  一般可以通过如下方法解决,在工程的Target中选中要执行编译的某个target,然后“get info”,打开Build设置页面,在“Library Search Path”中添加缺失链接库的所在文件夹的路径即可。

5.去掉xcode编译warning:ld: warning: directory not found for option '-L

  1. 选择工程, 编译的 (targets)
  2. 选择 Build Settings 菜单
  3. 查找 Library Search Paths 和 Framework Search Paths, 删掉编译报warning的路径即OK

4.字典转换错误:

-[NSDecimalNumber isEqualToString:]:

用sbjson解析字典时候出现如上错误。原因是字典中的值不是字符串“1”,而是1的数字表示。

要直接得到字符串的形式,在解析后给字典加上描述,如:

[[jsonObjects valueForKey:@"id"] description];

3.图片自适应宽高。

imageView1.contentMode = UIViewContentModeScaleAspectFit;  
    [self.view addSubview:imageView1];

2.控件旋转

宏定义 旋转角度 :

#define degreesToRadians(x) (M_PI*(x)/180.0)

CGAffineTransform rotation = CGAffineTransformMakeRotation(degreesToRadians(180));//旋转180度
[xxx setTransform:rotation];

顺便记录一些常量,以后用的着!

#define M_E         2.71828182845904523536028747135266250   e
#define M_LOG2E     1.44269504088896340735992468100189214   log 2e
#define M_LOG10E    0.434294481903251827651128918916605082  log 10e
#define M_LN2       0.693147180559945309417232121458176568  log e2
#define M_LN10      2.30258509299404568401799145468436421   log e10
#define M_PI        3.14159265358979323846264338327950288   pi
#define M_PI_2      1.57079632679489661923132169163975144   pi/2
#define M_PI_4      0.785398163397448309615660845819875721  pi/4
#define M_1_PI      0.318309886183790671537767526745028724  1/pi
#define M_2_PI      0.636619772367581343075535053490057448  2/pi
#define M_2_SQRTPI  1.12837916709551257389615890312154517   2/sqrt(pi)
#define M_SQRT2     1.41421356237309504880168872420969808   sqrt(2)
#define M_SQRT1_2   0.707106781186547524400844362104849039  1/sqrt(2)

1.ios 沙盒文件

描述:在对文件进行写入时候出现失败的情况。排查错误,.路径相同,仍然失败,查找到此原因。

沙盒里面的,文件保存的位置分为四个:

1,工程沙盒里(就是程序user Document文件夹下,以读取文件,写入文件方式)

2,工程自身里(就是在工程里手动创建一个如.plist文件,把固定的内容写入,这个需要人工手动写入,即xxx.app文件)

3,工程沙盒里(保存到user Document下,不过不需要读写文件,用系统的 NSUserDefaults 可以快速保存添加读取删除基本数据类型,类似于android里的Sharedpreferences )

4.tmp文件

要想真正的在app中对程序进行读写,只能把文件放在document,tmp里面。

IOS知识点收集的更多相关文章

  1. 漫谈iOS Crash收集框架

    漫谈iOS Crash收集框架   Crash日志收集 为了能够第一时间发现程序问题,应用程序需要实现自己的崩溃日志收集服务,成熟的开源项目很多,如 KSCrash,plcrashreporter,C ...

  2. IOS试题收集1

    IOS试题收集1 1.Objective C中有多继承吗?没有的话用什么代替? Protocol 2.Objective C中有私有方法吗?私有变量呢? OC类里面只有静态方法和实例方法这两种,@pr ...

  3. IOS学习笔记48--一些常见的IOS知识点+面试题

      IOS学习笔记48--一些常见的IOS知识点+面试题   1.堆和栈什么区别? 答:管理方式:对于栈来讲,是由编译器自动管理,无需我们手工控制:对于堆来说,释放工作由程序员控制,容易产生memor ...

  4. js基础知识点收集

    js基础知识点收集 js常用基本类型 function show(x) { console.log(typeof(x)); // undefined console.log(typeof(10)); ...

  5. 李洪强iOS开发之iOS社区收集

    李洪强iOS开发之iOS社区收集 项目 简述 github 全球最大的代码仓库,无论是iOS开发还是Android开发没有人不知道这个网站,它也是一个社区,你可以去follow(关注)某些人或公司. ...

  6. 李洪强iOS开发之iOS工具收集

    李洪强iOS开发之iOS工具收集 项目 简述 日期 我是怎么慢慢变懒的 : Jenkins + 蒲公英 使用Jenkins + 蒲公英使得项目打包给测试人员自动化,大大节省了劳动力 2015.04.1 ...

  7. 李洪强iOS开发之iOS学习方法收集

    李洪强iOS开发之iOS学习方法收集 在这里收集一些iOS学习方法,会不断更新 项目 简述 日期 一年多iOS开发总结 作者总结了自己一年多的iOS学习经验,对于iOS初学者来说很多地方是可以借鉴的 ...

  8. 李洪强IOS开发之iOS好项目收集

    李洪强IOS开发之iOS好项目收集 在这里收集一些最近出现的比较实用好玩的框架或者项目,会不断更新 项目 简述 日期 SCTableViewCell 类似与QQ侧滑删除Cell的Demo 201501 ...

  9. ffmpeg 常用知识点收集

    ffmpeg 常用知识点收集 一.基础简介 FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影.转换.流功能,包含了libavcodec ─这是一个用于多个项目中音频和视频的解码器库,以及l ...

随机推荐

  1. NetScaler 12.1 Deploy Package

    NetScaler 12.1 Deploy Package NS_VPX_Deploy_Package 百度网盘共享地址https://pan.baidu.com/s/1OT0Hxuz6ZBLwwM5 ...

  2. 论文笔记《Fully Convolutional Networks for Semantic Segmentation》

    一.Abstract 提出了一种end-to-end的做semantic segmentation的方法,也就是FCN,是我个人觉得非常厉害的一个方法. 二.亮点 1.提出了全卷积网络的概念,将Ale ...

  3. Jury Compromise(poj 1015)

    描述在遥远的国家佛罗布尼亚,嫌犯是否有罪,须由陪审团决定.陪审团是由法官从公众中挑选的.先随机挑选n个人作为陪审团的候选人,然后再从这n个人中选m人组成陪审团.选m人的办法是: 控方和辩方会根据对候选 ...

  4. border:none;和border:0;的区别

    一.是理论上的性能差异 [border:0;]把border设为“0”像素虽然在页面上看不见,但按border默认值理解,浏览器依然对border-width/border-color进行了渲染,即已 ...

  5. BusyBox 简化嵌入式 Linux 系统【转】

    转自:http://www.cnblogs.com/hnrainll/archive/2011/06/10/2077393.html BusyBox 的诞生 BusyBox 最初是由 Bruce Pe ...

  6. PyCharm 安装配置使用

    PyCharm 安装 下载地址 专业版:https://download.jetbrains.com/python/pycharm-professional-2017.2.3.exe 社区版:http ...

  7. 分享C#识别图片上的数字

    通过Emgu实现对图片上的数字进行识别.前期步骤:1.下载Emgu安装文件,我的版本是2.4.2.1777.3.0版本则实现对中文的支持.2.安装后需填写环境变量,环境变量Path值后加入Emgu安装 ...

  8. Android,一条线串联实心圆布局

    最近遇到一个简单的布局,不是listview的形式.就只是单纯的下图这种: 此界面布局代码: <?xml version="1.0" encoding="utf-8 ...

  9. Codeforces Gym100971 F.Two Points (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    这个题直接推公式就可以. 就是解一元二次方程,用高中学的公式,函数开口向上,求最大值为(4ac-b*b)/4a. 这个题推出来一元二次方程,然后将最大值的公式化简一下.公式很好推. 这个题有疑问,in ...

  10. 基于ARP的网络扫描工具netdiscover

    基于ARP的网络扫描工具netdiscover   ARP是将IP地址转化物理地址的网络协议.通过该协议,可以判断某个IP地址是否被使用,从而发现网络中存活的主机.Kali Linux提供的netdi ...