最近蘋(píng)果推了iOS14庄新,Xcode更新到了12鞠眉,beta版本是12.2,第一時(shí)間更新了择诈。跑一下老項(xiàng)目械蹋,暫時(shí)發(fā)現(xiàn)下列問(wèn)題;
一 崩潰問(wèn)題:
1.1 由于代碼原因?qū)е伦值滢D(zhuǎn)模型失敗羞芍,在使用模型點(diǎn)方法的時(shí)候崩潰哗戈。崩潰原因是字典沒(méi)有對(duì)應(yīng)對(duì)象的get方法。
聽(tīng)云收集的崩潰錯(cuò)誤說(shuō)明如下:
圖片.png
相關(guān)代碼:
LQTextModel.h
@interface LQTextModel : LQBaseModel
@property (nonatomic,strong) NSMutableArray <LQItemListModel *> * rightItem;
@end
崩潰位置代碼:
CNVLtemplateItemListModel *keyWord = [_dataModel.rightItem firstObject];
keyTitle = keyWord.title;//崩潰行
分析:
LQTextModel 在字典轉(zhuǎn)模型的時(shí)候模型數(shù)組rightItem 沒(méi)有轉(zhuǎn)成功導(dǎo)致 rightItem里存的是字典數(shù)組荷科,而不是模型數(shù)組唯咬,導(dǎo)致取title的時(shí)候崩潰。
解決方法:
使用MJExtension方法聲明數(shù)組內(nèi)的對(duì)象類(lèi)名:
+(NSDictionary *)mj_objectClassInArray{
return @{@"rightItem":@"CNVLtemplateItemListModel"};
}
1.2 UITableViewCell 點(diǎn)擊事件無(wú)響應(yīng)
UITableViewCell直接使用 [self addSubview:]畏浆,會(huì)導(dǎo)致點(diǎn)擊事件無(wú)響應(yīng)胆胰,解決方法是將 [self addSubview:] 換成 [self.contentView addSubview:];(來(lái)源)(2020-9-22)
1.3 iOS 14 UITableViewCell 長(zhǎng)按手勢(shì) UILongPressGestureRecognizer 不生效的問(wèn)題, 需要把手勢(shì)添加到self.contentView
1.4 私有方法 KVC 不允許使用
在iOS14下設(shè)置UIPageControl的pageimage,會(huì)導(dǎo)致奔潰刻获,不能再用了蜀涨。(來(lái)源)(2020-9-22)
[_pageControl setValue:[UIImage imageNamed:@"main_pageControl_dian"] forKeyPath:@"pageImage"];
[_pageControl setValue:[UIImage imageNamed:@"main_pageControl_xian"] forKeyPath:@"currentPageImage"];
其他發(fā)現(xiàn)
1 Xcode圖標(biāo)變化
Xcode12之前.png
Xcode12.png