【发布时间】:2017-09-26 02:16:45
【问题描述】:
我正在编写实现自定义控件 iOS 教程(我会链接它,但我不能使用两个以上的链接)。
我现在在 StackView 中生成了 5 个按钮。我为每个按钮实现了这些约束:
button.translatesAutoresizingMaskIntoConstraints = false
button.heightAnchor.constraint(equalToConstant: 44.0).isActive = true
button.widthAnchor.constraint(equalToConstant: 44.0).isActive = true
我完全按照指定输入了所有代码,但是当我运行应用程序时,按钮垂直和水平填充堆栈视图:
如果我将StackView的alignment属性设置为Top,可以防止按钮垂直拉伸,但最后一个按钮还是水平拉伸:
我尝试了许多不同的方法来防止最后一个按钮被拉伸但无济于事。在控制台中,我看到大小约束被覆盖,但我不知道是什么。
我希望这些按钮在 StackView 中保持指定的高度和宽度 (44)。关于如何做到这一点的任何想法?如果需要,我可以提供更多信息。
【问题讨论】:
-
你可以尝试删除这个
button.translatesAutoresizingMaskIntoConstraints = false吗? -
不幸的是我已经尝试过了,它给出了相同的结果。
-
你的堆栈视图的属性是什么?
-
希望this 是您想要的。如果不是,请告诉我。
-
使用
Fill Equally或Fill Proportionally尝试堆栈视图的Distribution 属性。
标签: ios xcode uistackview