iOS 13 适配:
主要适配:
1. UISearchDisplayController
处理。
2. UITabBar
设置文字颜色失效。
3. 禁止暗黑模式。
4. 获取 Wifi SSID
失败。
UISearchDisplayController
处理:
UISearchDisplayController
在iOS8 之后就被苹果标记为过期,使用 UISearchController
代替。UISearchController
初始化时可使用当前TableView
来展示搜索结果,也可使用自定义控制器展示结果,这里推荐使用自定义控制器,可以将搜索结果和原始数据分离,也可做一些自定义的操作,比如修改页面偏移
及内容视图大小
。
自定义搜索结果控制器推荐 UIViewController + UITableView
。
UITabBar
设置文字颜色失效:
问题描述:
在初始化 UITabBarController 的子控制器时,设置 TabBarItem 默认和选中状态下的文字颜色。页面加载成功之后,默认状态下的颜色和设置的颜色不一致。
处理办法:
[[UITabBar appearance] setBarStyle:UIBarStyleBlack];
[[UITabBar appearance] setTintColor:[UIColor whiteColor]];
[UITabBar appearance].barTintColor = [UIColor whiteColor];
禁止暗黑模式:
在info.plist 文件中添加以下键值对:
KEY: UIUserInterfaceStyle
TYPE: String
VALUE: Light
这不是长久之计!!!
获取 Wifi SSID
失败:
- 需要在开发者网站添加获取
Access Wifi Information
信息的权限,这个会携带在 PP 文件中。 Xcode11
以下版本需要在Capabilities
中打开Access Wifi Information
权限。- 根据苹果隐私策略,获取
Wifi
信息需要先获取用户位置权限
。
以上三点完成之后,个别情况下还是会获取失败,这个和iOS操作系统版本有关,目前苹果还没给出具体处理方式。
Comments