我有一个不使用情节提要的旧版旧版应用程序。所有内容均以编程方式添加和配置。我将UIButton约束调整为位于iPhone X屏幕的底部。我注意到该按钮不再对触摸事件做出响应,并且一旦将视图的背景色设置为黄色,我就注意到该按钮不在视图范围之内。它属于。
我尝试了几种方法来扩展视图以填充屏幕,但似乎没有任何效果。我设置了视图高度,将内容模式设置为“宽高比填充”,将“缩放比例”设置为“无运气填充”。

[self.view setBackgroundColor:[UIColor yellowColor]];
[self.view setTranslatesAutoresizingMaskIntoConstraints:NO];

我尝试将视图的框架设置为主屏幕的边界。那没用。
CGRect frame = [[UIScreen mainScreen] bounds];
self.view.frame = frame;

我尝试为主视图设置高度限制,但没有用。我不确定我是否正确地做到了。
[self.view addConstraint:[NSLayoutConstraint constraintWithItem:self.view
                                                              attribute:NSLayoutAttributeHeight
                                                              relatedBy:NSLayoutRelationEqual
                                                                 toItem:nil
                                                              attribute:NSLayoutAttributeNotAnAttribute
                                                             multiplier:1
                                                               constant:812]];

谁能告诉我我在做什么错?

ios - UIView高度未针对iPhone X扩展-LMLPHP

最佳答案

做这些检查

  • rootViewController的框架是否设置为[[UIScreen mainScreen] bounds]didFinishLaunchingWithOptions中的AppDelegate?像这样

    self.window.rootViewController.view.frame = [[UIScreen mainScreen] bounds];
  • 检查UIWindow的框架是否已设置为mainScreen界限。
    self.window.frame = [[UIScreen mainScreen] bounds]
  • 通过启用约束错误断点
  • 检查是否有任何自动布局约束被破坏
  • 检查开始按钮是否是ViewController主视图的子视图。
  • 09-20 10:16