原全屏适配在iPhoneX会由于安全区域的变化导致显示不全。
解决方案如下:
在self.view上添加一个view,剩下的视图基于该view布局,view的约束随self.view.safeAreaInsets的改变需要重置:
- (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无导航栏页面适配问题解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!