Xcode AutoLayout,使边距与高度成正比

我有一个很大的时间搞清楚如何使两个对象的边距成比例。 如果我在Xcode上select宽高比,它可以让我select调整对象屏幕高度的高度。 那不是我的情况。 我希望button和屏幕底部之间的边距与屏幕高度成正比。 而我希望使用Xcode“No Code”来完成。 我正在寻求做什么

您的支持是高度赞赏。

谢谢

使用NSLayoutConstraint的multiplier属性!

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

然后设置另一个约束,从视图顶部0到超级视图,等宽约束乘法器从视图到超级视图1。

完成!

我知道你不需要代码,但我认为你最好使用高度约束。 为边距的高度添加一个约束,然后将它拖到头文件中,得到如下所示的内容:

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

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

 @property CGFloat myHeightFraction; 

然后将其添加到viewDidLoad中。

 - (void)viewDidLoad { [super viewDidLoad]; self.myHeightFraction = 0.1; // eg to get margin at 10% of height myMarginHeightConstraint.constant = myHeightFraction * [[UIScreen mainScreen] bounds].size.height; ... } 

添加透明视图,并使其与高度成正比。 绑定你的完成button,这个透明的视图。 在那里你可以find如何做到这一点。