Xcode AutoLayout,使保证金与高度

时间:2015-06-26 13:26:47

标签: ios xcode autolayout

我正在努力弄清楚如何使两个物体的边距成比例。如果我在Xcode上选择宽高比,它可以让我选择调整物体比例屏幕高度的高度。那不是我的情况。我希望按钮和屏幕底部之间的边距与屏幕高度成比例。我希望使用Xcode“无代码”完成它。What I am seeking to do

非常感谢您的支持。

谢谢

3 个答案:

答案 0 :(得分:7)

使用NSLayoutConstraint的乘数属性!

首先,使用您希望的乘数将视图中的相等高度约束设置为超级视图。您可以使用Ctrl +从视图拖动到superview。

然后将另一个约束从视图顶部的0设置为超视图,并将相等的宽度约束从视图到超视图的乘数为1。

完成!

答案 1 :(得分:4)

添加透明视图并使其与高度成比例。使用此透明视图绑定您完成按钮。 There你可以找到如何制作它。

答案 2 :(得分:1)

我知道你不需要代码,但我认为你最好使用高度约束。为边距添加高度约束,然后按住CTRL将其拖到头文件中以获得类似:

@property (strong, nonatomic) IBOutlet NSLayoutConstraint *myMarginHeightConstraint;

您需要一个属性,其中包含边距的屏幕高度部分:

@property CGFloat myHeightFraction;

然后在viewDidLoad中添加它。

- (void)viewDidLoad
{
  [super viewDidLoad];

  self.myHeightFraction = 0.1; // e.g to get margin at 10% of height
  myMarginHeightConstraint.constant = myHeightFraction * [[UIScreen mainScreen] bounds].size.height;

  ...
}