1. 移除UIView的所有子图层造成的崩溃
//移除所有的子图层
- (void)removeAllSublayer;
{
for (CALayer *sublayer in self.layer.sublayers) {
[sublayer removeFromSuperlayer];
}
}
崩溃了
正确的姿势
for (int i = 0; i<self.layer.sublayers.count; i++) {
CALayer *sublayer = self.layer.sublayers[i];
[sublayer removeFromSuperlayer];
}
2. 真机调试出现的问题
解决办法:iphone 上已经装了标示符一样的APP ,删掉老版本 重新安装即可。
3. 莫名其妙的报unrecognized selector sent to instance
明明是 数组为什么回报 [UILabel addObjectsFromArray:],太奇怪了。
解决办法:把 .h 里面定义的全局变量移动到 .m中,问题出现时, .h 、.m中都有定义全局变量,当我尝试把两者合并到一起的,问题就消失了。
4.使用NSDecimalNumber进行累加计算时出现了崩溃
不可写成,需要一个中间变量做周转,而且 initWithString:@"0"是需要设置的,不能光 init
allMoney = [allMoney decimalNumberByAdding:money];
最后的代码是这样的:
NSDecimalNumber *allMoney = [[NSDecimalNumber alloc]initWithString:@"0"];
for (ExpensesModel *model in dataArray) {
NSDecimalNumber *allMoney11 =[[NSDecimalNumber alloc]initWithString:[allMoney stringValue]];
NSDecimalNumber *money = [[NSDecimalNumber alloc]initWithString:CLEAN(model.je)];
allMoney = [allMoney11 decimalNumberByAdding:money];
}
footLabel[0].text = [NSString stringWithFormat:@"¥ %@",[allMoney stringValue]];
5. 有时候你使用 po命令就是打印不出来东西?
调成:All Output 模式即可。
6. target specifies product type 'com.apple.product-type.tool', but there's no such product type for the 'iphonesimulator' platform
-
意思就是:不支持iPhones 平台
-
解决:选择支持平台为macOS
出现这个问题是因为:我把基于MacOS的项目强制修改为支持 iOS,结果就出现这个报错,并且在选中的模拟器下无法 clean success。
7. 使用objc_msgSend 方法报的错误
解决方法:Setting Enable strict checking of objc_msgSend Calls to NO, solved my issue.
8. svn更新代码后打不开.xcodeproj工程文件
svn更新代码后,打开xcode工程文件,会出现 xxx..xcodeproj cannot be opened because the project file cannot be parsed.
因为.xcodeproj工程文件冲突了,然后还是会强制更新,内部文件出现了冲突,所以解析不了文件。
会出现这样的冲突消息。
1. <<<<<<< .mine
2. 9ADAAC6A15DCEF6A0019ACA8 .... in Resources */,
3. =======
4. 52FD7F3D15DCEAEF009E9322 ... in Resources */,
5. >>>>>>> .r269
解决方法:
1.对.xcodeproj 文件右键,显示包内容
2.双击打开 project.pbxproj 文件
3.找到以上类似的冲突信息(可以用commad + f 搜索)
4.删除 <<<<<<<,======,>>>>>>这些行
5.保存,退出
6.重新打开.xcodeproj文件即可
9.使用APPlication Loader上传时报错
以前的版本好好的,可最近上传api,连续上传了3次都是报这样的错误,看上面的提示好像是网络的问题。可是我立刻上传其他项目的api却是成功的。
像这样,一般进度条走到头就算提交成功啦,如果中间出现几次卡住,无网络,重复,这样的情况基本上是有问题的。
最后的解决办法:
- 1.完全退出了 Xcode(之前是在打开项目的情况下),重置了模拟器(应该无关),(再次打开别的项目后调出APPlication Loader。
- 2.上传了其他项目的 ipa成功后上传这个之前出现问题的ipa包。
- 3.一气呵成,上传成功了。
10.证书导出方式错误造成的问题
上图最大的问题就是在导出证书的时候,把证书的下拉箭头点开了,导出了里面的东西,导出来的东西有时候是不完整的,(话说,测试环境下的证书竟然没有问题!!)正确的方式是直接右键导出,不能像图中那样,这是很隐蔽的错误。
网友评论