【发布时间】:2015-05-28 22:32:16
【问题描述】:
我有一个功能齐全的应用程序,我正在 Interface Builder 中创建一个带有按钮和标签的新视图控制器。我已经在 Interface Builder 中布置了所有内容,并使用AutoLayout 来确保每个组件都已就位。它在 iPhone 5s 上运行良好,但在 iPhone 6 和 6 Plus 上,我的UIButtons 没有调整其高度以适应更大的屏幕。
屏幕截图将有助于更清楚地理解这一点。
iPhone 5s
iPhone 6 Plus
Update Me 文本是一个UILabel。基本到底部 PRO Unlimited 是一个UILabel。这些按钮是单独的UIButtons。恢复购买是UIButton,底部的最终文本是UILabel。
我的约束是:
基本标签
到 Superview 的尾随空间
引领空间走向Superview
恢复购买的底部空间UIButton
更新我的顶部空间UILabel
购买 100 个 UIButton
引领空间走向Superview
追踪空间无限购买UIButton
顶部空间到顶部布局
恢复购买的底部空间UIButton
等宽无限购买UIButton
无限购买UIButton
到 Superview 的尾随空间
领先空间购买 100
顶部空间到顶部布局
恢复购买的底部空间UIButton
等宽买 100 个
恢复购买UIButton
到 Superview 的尾随空间
引领空间走向Superview
顶部空间基本UILabel
底部空间到一次性UILabel
顶级空间无限购买
购买 100 的顶部空间
在 iPhone 5s 上,Restore Purchases UIButton 的宽度为 268,高度为 30。
在 iPhone 6 Plus 上,Restore Purchases UIButton 的宽度为 382,高度为 198,因此很明显这占用了大量空间,导致 UIButton 不会增加。
我想要实现的是,它的每个组件都像现在一样,但是在 iPhone 6 Plus 上,让 Buy 100 和 Buy Unlimited UIButtons 增加高度而宽度保持不变.
对此的任何指导将不胜感激!
【问题讨论】:
-
++即使按钮大小增加它也会看起来很奇怪。您还必须随着屏幕尺寸的增加而增加文本/标签的大小。
-
啊,确实有道理!您是指 UILabel 的字体大小还是实际大小?我没有在任何地方设置高度限制,所以我猜它应该随着屏幕尺寸的增加而增加,但不知道它现在是否正在这样做?如果我可以在更大的屏幕上增大字体大小并同时增加标签大小,那可以工作,但不知道如何
-
我认为两者兼而有之。我自己没有尝试自己增加文本/标签。让我们等待 SO 社区的帮助。 :)。但是尝试为每个标签设置高度限制,以便它们可以占用空间以使布局良好。
-
非常感谢您的来信 - 我很感激,我希望社区可以帮助我不要再经历疯狂的一天! :)
-
检查一下,UILabel text not automatically resized using Auto Layout,自动布局是以编程方式完成的。
标签: ios objective-c iphone xcode autolayout