原全屏适配在iPhoneX会由于安全区域的变化导致显示不全。
解决方案如下:
在self.view上添加一个view,剩下的视图基于该view布局,view的约束随self.view.safeAreaInsets的改变需要重置:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
- ( void )viewDidLoad { [ super viewDidLoad]; // Do any additional setup after loading the view. self.view.backgroundColor = [UIColor blackColor]; if ( @available (iOS 11 , *)) { [self setAdditionalSafeAreaInsets:self.view.safeAreaInsets]; } [self defaultUI]; [self addNotification]; } //iOS11新增,安全区域发生改变时调用 - ( void )viewSafeAreaInsetsDidChange{ [ super viewSafeAreaInsetsDidChange]; [self defaultUIWithSafeAreaInsets:self.view.safeAreaInsets]; } |
总结
以上所述是小编给大家介绍的iPhoneX无导航栏页面适配问题解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://blog.csdn.net/rainbowfactory/article/details/78517354