繁体   English   中英

AutoLayout 不适用于 5.5" iPhone

[英]AutoLayout Not Working For 5.5" iPhone

在我的应用程序中,我有一个需要隐私的屏幕,所以当你第一次打开它时,它会检查你是否使用密码登录。 如果没有,它会在 SuperView 顶部添加另一个视图,直到输入密码。 我为此使用 XIB 文件。 屏幕的主视图是一个 tableview,我在另一个 UIView 上使用药物作为密码屏幕。 然而,尽管有 AutoLayout,密码视图只占用 4.7" 手机的尺寸,这意味着你可以看到它后面的边缘。我确保启用了 AutoLayout,在背景图像上,即渐变,我添加了 4约束,每侧一个,设置为 0,以便它始终覆盖其后面的视图,然后将 UILabel 设置为在容器中水平对齐。我做错了什么?这在不同的视图和 XIB 中完美运行同一个应用程序,我什至直接复制了视图,但它仍然在这一类中搞砸了。

加载它的代码是(密码是在标题中声明为IBOutlet UIView *password

 [self.navigationController.view addSubview:password];

在此处输入图片说明

正确的解决方案是使用视图控制器来管理窗帘视图,然后将该视图控制器推送到导航控制器的堆栈上,或者从导航控制器或标签栏控制器呈现它。

可能有2个可能的原因

  1. 您可能没有对您的 xib 应用约束。
  2. 您已经对其应用了约束,但是当您初始化您的 xib 时,您正在提供修复框架。

如果你分享你的代码你是怎么做的会更好?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM