美文网首页
iOS14 适配 先行者

iOS14 适配 先行者

作者: Peak_Liang | 来源:发表于2020-07-22 20:08 被阅读0次

1.UITableViewCell 的 contentView 会置于自定义控件的上层。

在 iOS14 bate 中,UITableViewCell 中如果有直接添加在 cell 上的控件,也就是使用 [self addSubview:] 方式添加的控件,会显示在 contentView 的下层。
contentView 会阻挡事件交互,使所有事件都响应 tableView:didSelectRowAtIndexPath: 方法,如果 customView 存在交互事件将无法响应。如果 contentView 设置了背景色,还会影响界面显示。
此改动在官方文档中并未说明,存在正式版发布时作为 bug 修复的可能性。但是在此前关于 contentView 的声明注释中,官方已经明确建议开发者将 customView 放在 contentView 上,使 contentView 作为 UITableViewCell 默认的 fatherView。

// Custom subviews should be added to the content view.
@property (nonatomic, readonly, strong) UIView *contentView;

如果正式版系统更新了此改动, App 中可能会出现页面交互和显示异常的情况。
解决方案就是将添加在 cell 本体上的 ``customView添加在contentView` 上

2.KVC 不允许访问 UIPageControl的pageImage

同 iOS 13 更新时的 textField 的 placeHolder 属性一样,iOS 14 更新后,禁止开发者用 KVC 的方式访问 UIPageControl 的 私有属性 pageImage。

3.UIDatePicker 更新 UI 样式

iOS 14 中,UIDatePicker UI样式更新了

    UIDatePickerStyleInline API_AVAILABLE(ios(14.0)) API_UNAVAILABLE(tvos, watchos),
aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy80MTA4NS05NDZlMDA4NGJmZWFkYTI5LnBuZw.jpeg

并且为默认样式。如果想使用原来的播轮样式,需要设置

    _pickerView.preferredDatePickerStyle = UIDatePickerStyleWheels;

preferredDatePickerStyle 为 iOS 13.4 新增属性

4. 隐私权限适配

4.1 相册权限

相册新增选择权限类型 PHAuthorizationStatusLimited :当页面弹出请求权限 Alert 时,会有 Select Photos... 选项,用户选择该选项时,会弹出页面供用户选择允许App访问的图片/照片。
适配要点:权限提示框会在每次冷启动后打开相册时重新弹出,可以在 info.plist 中设置 PHPhotoLibraryPreventAutomaticLimitedAccessAlert 选项为 YES ,关闭提示,调用下述方法手动选择:

[[PHPhotoLibrary sharedPhotoLibrary] presentLimitedLibraryPickerFromViewController:self];
4.2 地理位置

新增了 精确定位模糊定位 的概念,用户可以手动选择,模糊定位的误差约 500m 。可以根据实际功能判断是否可以接受用户选择模糊定位。
如果功能强依赖精确定位,可以在需要的时候调用 [CALocationMnanger requestTemporaryFullAccuracyAuthorizationWithPurposeKey:] 单独请求一次精确定位,用户可以选择拒绝授权。所需参数 purposeKey 需要在 info.plist 中设置 NSLocationTemporaryUsageDescriptionDictionary 字典,key 为 purposeKey , value 为对应的话述。

相关文章

网友评论

      本文标题:iOS14 适配 先行者

      本文链接:https://www.haomeiwen.com/subject/uobtlktx.html