4英寸屏幕上的自动布局
Posted
技术标签:
【中文标题】4英寸屏幕上的自动布局【英文标题】:Auto-Layout on 4inch screen 【发布时间】:2012-09-26 17:27:15 【问题描述】:我试图让这个视图与自动布局一起使用,以适应 3.5 英寸屏幕和 4 英寸屏幕。我开始觉得只使用自动布局和 IB 是不可能的。
有什么见解吗?我已经尝试了几乎所有我认为有意义的约束组合(以及许多在黑暗中的刺伤),但没有运气。
这是它在 3.5 英寸屏幕上的外观(来自 IB,但在模拟器中看起来相同)
这是它在 4 英寸屏幕上的布局方式
以下是限制条件,如果有更好的方式来显示这些信息,请告诉我。
【问题讨论】:
我们可能需要查看您的自动布局掩码/弹簧和支柱图,但您可能需要考虑的一件事是使用容器视图(一个通用的 UIView,您可以在其中放置所需的所有控件保持彼此之间的相对位置不变),然后关闭子视图的自动调整大小并仅在容器视图上设置自动调整大小。 已更新以包含约束的屏幕截图,如果有更好的方法来显示此信息,请告诉我。这是个好主意,我会试试的 使用您的 UIView 容器方法并从自动布局切换回 springs/struts 有效。尚不确定此自动布局功能,但很想知道是否可以使用它。 @ChrisWagner 一个附带问题。您如何创建屏幕截图中显示的文本框? @Isuru 这只是一张图片,我在上面放了无边框的UITextFields
【参考方案1】:
最简单(但不是最好)的方法是获取页面上的每个项目并添加以下约束
-
“pin”宽度
“引脚”高度
引领空间到superview
超级视图的顶部空间
删除所有其他约束。
这应该用所有绝对值静态布置每一个。它应该可以正常工作....除非您旋转,但我不确定您是否支持横向。如果这样做,请将第 4 步替换为“容器中的水平中心”约束。
旁注。 Xcode 设置了粉色约束,因为它缺少需要正确定位的东西(你不能删除这些)。蓝色的是你放入的。很多时候,当你放入蓝色的时候,粉色的会消失,因为你给了它缺少定位项目所需的 Xcode 数据。
【讨论】:
以上是关于4英寸屏幕上的自动布局的主要内容,如果未能解决你的问题,请参考以下文章