【发布时间】:2014-07-25 05:07:24
【问题描述】:
我一直在搜索这个,但我似乎无法弄清楚。
如何使用自动布局约束根据手机的屏幕尺寸调整视图大小?我有一个非常适合 iphone 5 的视图,但我想为 iphone 4 缩小它。我使用什么约束?
感谢您提供的任何帮助或资源。
【问题讨论】:
标签: ios iphone nslayoutconstraint autolayout
我一直在搜索这个,但我似乎无法弄清楚。
如何使用自动布局约束根据手机的屏幕尺寸调整视图大小?我有一个非常适合 iphone 5 的视图,但我想为 iphone 4 缩小它。我使用什么约束?
感谢您提供的任何帮助或资源。
【问题讨论】:
标签: ios iphone nslayoutconstraint autolayout
答案并不那么容易。这取决于你的屏幕上有什么。我不喜欢使用 resolve 和自动布局,我喜欢处理我所有的限制。例如,如果您在屏幕的右上角有一个按钮,我会使用 Pin,并在按钮的右侧和视图的一侧以及按钮的顶部和视图的顶部。
这将取决于你想要的按钮之间的距离、按钮和视图之间的距离、collectionviewcells、标签、图像、tableviews 等......
您总是可以寻求简单的解决方案,然后祈祷。在情节提要中,查找解决自动布局问题按钮,单击它,然后按添加缺少的约束。交叉你的手指,也许这对你有用! (如果你没有找到按钮,让它更容易:编辑器->解决自动布局问题->添加缺少的约束)
【讨论】:
只需使用 UUID 检测设备并使用它设置约束常量。如果您使用情节提要,您可以使用@IBOutlet 将约束连接到您的代码。您要调整的约束必须按照您的意图移动对象。例如,如果您有一个按钮,并且它的超级视图在屏幕底部有一个约束,则调整常量将根据常量是正数还是负数垂直向上/向下移动。
【讨论】:
Apple 有关于约束和自动布局使用的优秀文档。
您可以按照此处的指南进行操作 - https://developer.apple.com/library/ios/documentation/userexperience/conceptual/AutolayoutPG/Introduction/Introduction.html
或
观看精彩的 WWDC 视频
iOS 和 OS X 自动布局简介
https://developer.apple.com/videos/wwdc/2012/?id=202
掌握自动布局的最佳实践
https://developer.apple.com/videos/wwdc/2012/?id=228
【讨论】:
要将视图缩小到较小的屏幕,您需要使用顶部布局指南和底部布局指南设置约束(您可以通过 ctrl-draggin 从对象到视图顶部或视图底部进行设置)
我建议在主视图中插入一个视图并使用以下命令“约束”它: - 顶部空间到顶部布局指南 - 通往集装箱的空间 - 到容器的尾随空间 - 底部空间到底部布局指南
在此视图中添加所有元素,但请记住在中间留出一些“灵活”的空间
----------------------------------
| | |
| | |
|---------Element----------------|
| | |
| | |
|--------------Element-----------|
| | |
| | |
|---------Element----------------|
| |
| |
| Flexible space |
| no constraints |
| |
|---------Element----------------|
| | |
|---------Element----------------|
| | |
|--------------------------------|
【讨论】: