限制不起作用的视图之间的水平中心

时间:2016-08-20 07:57:17

标签: ios xcode user-interface

我在相同尺寸的屏幕上有两个视图。我将一个视图限制在另一个视图的顶部,但它不起作用。

我可以查看界面构建器上的约束以及显示x位置匹配的行:

当我选择前视图中心时,您可以看到约束的行: enter image description here

然后如图所示,当我选择backview.centreX = frontview.centre.X时,约束线显示在同一个地方:

enter image description here

因此,我可以看到后视中心x位置应该被限制为与前视图中心X位置相同。

然而,后视图X最终处于一个完全不同的位置(请参阅我打印每个CGFloat位置字符串的日志):

BackView X Position is = 642.0
BackView Y Position is = 270.0
FrontView X Position is = 220.0
frontView Y Position is = 270.0

我想也许这是我打印出的代码但是没问题(见下文):

覆盖func viewDidLoad(){     super.viewDidLoad()

backViewXStartPosition = backview.center.x
backViewYStartPosition = backview.center.y

frontViewXStartPosition = frontview.center.x
frontViewYStartPosition = frontview.center.y

backViewXStartPositionString = String (backViewXStartPosition)
backViewYStartPositionString = String (backViewYStartPosition)
frontViewXStartPositionString = String (frontViewXStartPosition)
frontViewYStartPositionString = String (frontViewYStartPosition)

print ("BackView X Position is = "+backViewXStartPositionString )
print ("BackView Y Position is = "+backViewYStartPositionString )
print ("FrontView X Position is = "+frontViewXStartPositionString )
print ("frontView Y Position is = "+frontViewYStartPositionString )

我还检查了backview上的其他约束,认为它们可以覆盖但我也找不到任何东西。对于一个不受约束的水平中心不工作是否正常?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

检查您的backview的前导或尾随约束(如果存在可能是冲突的