【问题标题】:Adding auto layout to buttons为按钮添加自动布局
【发布时间】:2016-01-13 00:49:25
【问题描述】:

我有一个应用程序,其中有两个按钮,我尝试在每个按钮上放置一个背景图像来自动布局。 这就是我想要的样子:

但是当我在情节提要中添加这些约束时:

发生这种情况:

由于屏幕尺寸的原因,这只发生在 iphone 5 上。有没有办法通过使用不同的自动约束来确保不会发生这种情况,这些自动约束将保持形状并将它们放在正确的位置?

【问题讨论】:

  • 如果您提供更多信息,例如,您是否想要一些固定按钮的高度和宽度以及您想要在两者之间有一些恒定的空间,或者您只想将它​​们放在上面,那么提供解决方案会很容易屏幕边缘。

标签: ios autolayout


【解决方案1】:

您的问题是 iPhone 6 和 5s 型号的屏幕宽度不同,这就是为什么您的 UIButton 会缩小宽度。

有几种方法可以解决它,这取决于您希望如何放置两个按钮。

假设您不关心两个按钮之间的空间,那么您可以简单地认为第一个按钮是 5 pt。远离左边缘,第二个按钮是 5 pt。远离右边缘,那么你就可以走了(假设 Y 位置不变)

您也可以控制拖拽相关约束到您的.h或.m文件中,并在布局期间手动更改其值以适应不同的屏幕宽度。

顺便说一句,UIButton 和其他一些视图默认计算了intrinsicSize 属性,如果你想利用它,你需要阅读一些关于它的文档并了解内容拥抱、内容阻力、优先级概念来帮助你。我还建议您观看 WWDC 2015 视频:自动布局的奥秘第 I 部分和第 II 部分

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-07
    • 1970-01-01
    • 2016-10-19
    • 1970-01-01
    • 1970-01-01
    • 2015-12-28
    相关资源
    最近更新 更多