好的,所以我是 Swift 编程语言和 IOS 平台的新手,但是我在其他平台(如 Android/WP/Xamarin)上的移动开发方面有很强的背景,所以我决定从 Auto Layout 开始深入学习布局系统。
在这里,我试图通过PureLayout使用 Auto Layout API 将视图水平居中并将其与屏幕底部对齐。当我将视图设置为与其超级视图的水平轴对齐时,这是我得到的结果。
代码
override func updateViewConstraints() {
if(!didSetupConstraints)
{
blackView.autoPinToBottomLayoutGuideOfViewController(self, withInset: 10)
blackView.autoSetDimensionsToSize(CGSize(width:50,height: 50))
blackView.autoAlignAxisToSuperviewAxis(.Horizontal)
didSetupConstraints=true
}
super.updateViewConstraints()
}
结果
但是,当我将视图设置为与垂直轴对齐时,我得到了所需的最终结果
代码
override func updateViewConstraints() {
if(!didSetupConstraints)
{
blackView.autoPinToBottomLayoutGuideOfViewController(self, withInset: 10)
blackView.autoSetDimensionsToSize(CGSize(width:50,height: 50))
blackView.autoAlignAxisToSuperviewAxis(.Vertical)
didSetupConstraints=true
}
super.updateViewConstraints()
}
结果
即使我得到了我想要的结果,如果没有正确理解为什么它通过将视图设置为与它的超级视图的垂直轴对齐来水平对齐,我对继续进行感觉并不好。所以有人可以向我解释对齐轴的整个概念以及它们在自动布局中的工作方式。提前致谢。