iOS 开发的大小类和自动布局

Posted

技术标签:

【中文标题】iOS 开发的大小类和自动布局【英文标题】:Size classes and auto layout for iOS development 【发布时间】:2016-01-24 02:38:56 【问题描述】:

我正在尝试创建一个适用于所有设备的简单用户界面(显然),但我没有取得多大成功。该程序由两个标签、一个按钮、一个图像视图和一个文本字段组成,我也使用通用故事板。

我实现了一个顶部约束,水平居中并固定了所有标签、按钮和文本字段的宽度和高度。我对图像视图所做的唯一例外是,我没有实现顶部约束,而是使用了底部约束,因为我发现使用前者会导致它仅部分显示。然后我会从通用情节提要切换到具有基本值的情节提要。在将 UI 元素移动到不同尺寸屏幕上的新位置后,我会从他们那里删除现有约束并添加新约束。

当我在 iPhone 4S 上运行我的应用程序时,布局虽然大部分正确,但仍然不完美(即标签离图像太近了)。有谁知道我怎样才能让我的布局看起来正确?我一直在关注本指南,Adaptive Layout Tutorial in ios 9。

非常感谢您的帮助!

[图片约束示例1

【问题讨论】:

请将您的帖子分成几段以便更容易理解,并且可能包括屏幕截图而不是解释限制。这将帮助我们更快地为您提供更好的答案。另外,我建议你跳过你说你是 Swift 新手的部分,这些信息与我们无关。 您好埃米利奥,感谢您的建议!我已经相应地更新了我的评论。 【参考方案1】:

我不知道你对自动布局有多熟悉,所以我建议你看Stanford university lecture regarding autolayout。

简而言之,根据讲座和查看您的图片后,您几乎不应该使用实际数字设置约束。使用“标准值”,当你不能选择“标准值”时写0。

我建议观看上面的讲座以及其中的其他示例。

【讨论】:

谢谢,我去看看。【参考方案2】:

您的标签有 2 个有问题的约束 1. 顶部空格(30 分)到“你的狗多大了” 2. 顶部空间(28 点)到按钮

这意味着您的按钮是 2 磅高(真的很小!!) 或者 - 因为按钮已经有一个固定的高度,标签和文本字段太近了(甚至可能与按钮重叠) 你应该删除顶部空间约束(到“你的狗多大了”)并做其他事情,或者给它更多点高度

祝你好运!

【讨论】:

嗨@Yitschak,为了直截了当,你是说我应该删除标签到文本字段的高度约束?我真的不明白这将如何帮助我解决问题。我无法获得标签“你的狗是……”以保持我设置的预期高度。我将更新我的原始评论以显示图片的约束。看过之后,如果你能告诉我这个问题,那就太好了。非常感谢!

以上是关于iOS 开发的大小类和自动布局的主要内容,如果未能解决你的问题,请参考以下文章

iOS 自动布局:如何在 Xcode 故事板中为 iPad 横向和 iPad 纵向设计不同的布局?

读书笔记iOS-自动布局

IOS开发之自动布局显示网络请求内容

自动布局

iOS 8 自定义键盘自动布局键

Xcode 6 中已开发应用程序中的自动布局实现