Ios 在情节提要中将视图定位为屏幕大小的1/3

Ios 在情节提要中将视图定位为屏幕大小的1/3,ios,autolayout,uistoryboard,nslayoutconstraint,universal-storyboard,Ios,Autolayout,Uistoryboard,Nslayoutconstraint,Universal Storyboard,我试图在故事板中定位一个视图,使其顶部边缘始终保持屏幕大小的1/3。我目前已经设置了一个顶部布局指南的约束,但是约束的常数是…不管它在哪个屏幕大小中使用,它都是常数,但是我希望它是屏幕大小的1/3。这可以完全在故事板中完成吗?谢谢你的回答 当前状态的屏幕截图: 您可以添加空(透明颜色)UIView,将其固定在顶部,并将其高度设置为superview的1/3。然后可以将黄色视图的顶部固定到空UIView的底部。在视图的上边缘和superview的下边缘之间创建约束。将约束的常量设置为零,并将其乘数

我试图在故事板中定位一个视图,使其顶部边缘始终保持屏幕大小的1/3。我目前已经设置了一个顶部布局指南的约束,但是约束的常数是…不管它在哪个屏幕大小中使用,它都是常数,但是我希望它是屏幕大小的1/3。这可以完全在故事板中完成吗?谢谢你的回答

当前状态的屏幕截图:


您可以添加空(透明颜色)UIView,将其固定在顶部,并将其高度设置为superview的1/3。然后可以将黄色视图的顶部固定到空UIView的底部。

在视图的上边缘和superview的下边缘之间创建约束。将约束的常量设置为零,并将其乘数设置为1:3。像这样:


您可以将其设置在中间或底部。 以下是与中心相关的约束示例: (距顶部1/3=距中心1.66)

对于任何试图通过编程实现此功能的人,我无法通过“锚定”样式处理此问题,但旧的
NSLayoutConstraint
初始值设定项起到了作用:

let constraint = NSLayoutConstraint(item: floatingBtn,
                                    attribute: .centerY,
                                    relatedBy: .equal,
                                    toItem: view,
                                    attribute: .bottom,
                                    multiplier: 1/3,
                                    constant: 0)
constraint.isActive = true

归功于。

是的,这是可能的,你能给我们一个屏幕截图吗?我添加了一个屏幕截图,没有什么特别的事情发生。检查这个问题:仅供参考,DanLoughney的链接问题调整了相对于屏幕的视图大小;这个问题是关于视图在屏幕上的位置。对乘数使用适当的有理数,如
5:3
:p这对我不起作用,当我将常数设置为0时,它会将视图包围到屏幕底部。此外,我似乎无法创建指向“Superview.Bottom”的约束,它总是创建指向“Superview.Bottom Margin”的约束