错误笔记

来源:互联网 发布:mac的excel数据有效性 编辑:程序博客网 时间:2024/05/16 00:49

number1:
错误信息: whose view is not in the window hierarchy!
错误描述: 在ViewDidLoad里定义一个UIAlertController的弹出框
解决方案: 在视图出现之后再弹出提示框, 即在ViewDidAppear中弹出, 或者延时弹出

number2:
错误描述:
通过cocoapods添加三方后打开工程报错
通过cocoapods添加三方后打开工程报错, 原因是没有由cocoapods生成的 .xcworkspace文件 打开文件
解决方案:
正确打开即可

number3:
错误描述: 在远程推送真机调试时, 出现UUID错误
原因: 之前已经使用过一个描述文件, 在使用新的描述文件时, 产生冲突
解决方法: 复制UUID的那段字符, 打开工程文件, 显示包内容, 搜索这段字符, 删除所有的搜索到的字符, 然后重新设置证书, 运行, over!

number4:
错误描述: lldb
原因: 在做音频视频播放时, 不能打全局断点, 打了就crash
解决方法: 删了全局断点即可

number5:
错误描述:引用sdwebimage时在pod update时
so, 这就是
原因: ruby2.3版本与cocoa pods 0.39不兼容, 主要是ruby2.3
解决办法:安装ruby管理工具rvm, 将ruby版本调成2.0.0即可

number6:
错误描述: 用baseModel处理数据出错
这里写图片描述
解决方法: 加上- (void)setValue:(id)value forUndefinedKey:(NSString *)key方法即可

number7:
错误描述: 加载图片不出, 但是在浏览器上可以打开
原因: 这里写图片描述
圈起来的 “..”, 在浏览器上可以自动识别,将其忽略, 但是我们自己拼图片网址时, 要将其去掉
解决方法: 将 “..” 去掉, 再拼网址

number8:
错误描述: 用masonry约束控件时爆出:
这里写图片描述
原因: ‘couldn’t find a common superview for 出现这个错误的原因是,你所设置约束的这个控件和所依赖的控件没有共同的父视图。因为没有共同的视图作为参照,frame 就不能转换到一个相同的坐标系。这个问题经常会出现在,我们创建了要设置约束的视图,而没有将它添加到父控件中,又或者,要设置约束的这个视图和所依赖的视图没有共同的父视图,也就是你遇到的这种情况。
也就是说, 先添加到父视图中, 所设置的约束才好使!!!
解决方法: 见上方……

number9:

错误描述:xcode编译异常,提示Expected a type
解决: 需要自己手动导入库

#import "UIKit/UIKit.h"

number10:
错误描述: unrecognized selector sent to instance
原因: 造成unrecognized selector sent to instance iphone,大部分情况下是因为对象被提前release了,在你心里不希望他release的情况下,指针还在,对象已经不在了。
很多时候,是因为init初始化函数中,对属性赋值没有使用self.foo赋值,而是直接对foo赋值,导致属性对象没有retain(心里以为retain了),而提前释放。
出现unrecognized selector sent to instance问题,大部分是因为对象被提前释放,指针变成野指针,还有一种情况是本身就是野指针,如声明一个局部对象,没有初始化就直接调用。
解决: 可参考http://moto0421.iteye.com/blog/1570876
http://wonderffee.github.io/blog/2014/05/17/solve-unrecognized-selector-sent-to-instance-problem/

number11. debug栏出现: This application is modifying the autolayout engine from a background thread, which can lead to engine corruption and weird crashes. This will cause an exception in a future release.
原因: 在子线程中对UI界面进行操作
解决: 在主线程中对U界面操作即可:

dispatch_async(dispatch_get_main_queue(), ^{    });

number12:
问题描述: 再用masonry写一个tableview的约束时, 出于某种原因其size写在前面, 在约束里面只写了make.left和make.top约束, 然后发现cell点击事件不响应
原因? 推测可能是用masonry写的不完全约束或导致点击事件对点击的位置响应出现错误, 没有在约束里写size, 所以点击事件也就没有响应范围
解决: 在约束中加上size的约束条件即可

  1. 问题描述: 在模拟器上图片正常显示, 但是真机上不出现
    原因, 文件名与引用名不同, 比如一个图片名叫a.JPG, 代码中用a. jpg, 这样在模拟器上可以正常显示, 但是真机上不能, 是因为在simulator上mac的兼容性处理比较好, 而iPhone上则要求严格匹配了
1 0