我一直在使用Xcode一段时间,我喜欢使用故事板,但自从引入更宽屏幕以来,我很难理解如何实现我想要的布局。
例1;
例如,假设我使用的是一个320x580的故事板,屏幕顶部有6个UIButton,每个都是40x40,均匀分布。
我想要实现的是按钮增加尺寸的能力,因为显示它们的屏幕会变宽。
我尝试过以不同的方式使用各种约束,绝对没有效果。
例2;
我有一个UITableview,一个320宽的单元格。我在那里放了一个覆盖整个牢房的UIView。 我将前导空间,尾随空间,顶部和底部固定,但如果我在更宽的屏幕上显示它,它总是320宽,即使我没有固定宽度!
如何使用自动布局和约束?在Xcode 5中它似乎更容易。
感谢您的时间。
答案 0 :(得分:0)
示例1:
如果希望按钮变宽,则应对边缘和每个按钮之间进行约束,并使所有这些间距约束具有相同的大小(或者至少是按钮之间的所有间距约束)。如果您将所有按钮设置为相同尺寸但没有固定尺寸,则它们将间隔相等,并在更宽的屏幕上变大。
示例2:
我不知道你在这里做了什么,因为这应该有效,假设桌面视图本身固定在超视图的两侧。
答案 1 :(得分:0)
您可以将约束等于宽度作为superView。
var widthConstraint = NSLayoutConstraint(item: item, attribute: .Width, relatedBy: .Equal, toItem: self.view, attribute: .Width, multiplier: 1.0, constant: 0)
self.view.addConstraint(widthConstraint);
您可以将约束等于高度作为superView。
var heightConstraint = NSLayoutConstraint(item: label, attribute: .Height, relatedBy: .Equal, toItem: self.view, attribute: .Height, multiplier: 1.0, constant: 0)
self.view.addConstraint(heightConstraint);
您可以更改乘数值以将widht和height约束更改为您的要求