使 UILabels / UITextFields 在所有手机上按比例看起来相同

Posted

技术标签:

【中文标题】使 UILabels / UITextFields 在所有手机上按比例看起来相同【英文标题】:making UILabels / UITextFields looks the same proportionally on all phones 【发布时间】:2015-06-14 18:44:48 【问题描述】:

使用自动布局,让这样的东西在所有 iPhone 尺寸上看起来都一样的最佳方法是什么?

为所有单独的组件添加约束导致 UITextField 每次都比其他组件大,我不确定如何使它们看起来都一样大小,并按比例适合所有 iPhone。

【问题讨论】:

【参考方案1】:

你有一个约束可以在两个 UIView 之间建立关系。

如果你 ctrl 从 Hours 拖动到 Mins,你可以选择“Width”。确保常数值为 1。然后您可以从 Hours 到 Seconds 执行相同的操作。

你可以also do it by code:

constraint = [NSLayoutConstraint constraintWithItem:myLabel
                                          attribute:NSLayoutAttributeWidth
                                          relatedBy:NSLayoutRelationEqual
                                             toItem:otherLabel
                                          attribute:NSLayoutAttributeWidth
                                         multiplier:1.0f
                                           constant:0];

【讨论】:

以上是关于使 UILabels / UITextFields 在所有手机上按比例看起来相同的主要内容,如果未能解决你的问题,请参考以下文章

显示 UILabels 和 UIButtons 相互内联的方法

iOS Autolayout:调整大小父视图中的 UILabels 问题

具有多个 UITextFields 的 iOS UITableViewCell 子类滚动出视图

UIpickerView 在同一个 ScrollView 中填充多个 uitextFields

代码;根据内容自动设置 UIScrollView 的高度

如何从动态生成的 UITextField 中检索数据?