我有两个按钮,我们称之为buttonA和buttonB。
我想要实现的是当我点击buttonB时,我想要buttonA和buttonB来改变它们内部文本的垂直对齐方式。
我尝试了以下内容:
func changeAllign() {
buttonA.contentVerticalAlignment = UIControlContentVerticalAlignment.Top
buttonB.contentVerticalAlignment = UIControlContentVerticalAlignment.Bottom
}
由于某种原因,这不起作用。当我点击buttonB时,它会将文本对齐到底部,但buttonA将保持不变。然后,如果我按住/或单击按钮A,文本将对齐到顶部。
这可以做到这样改变而不必先点击它吗?
答案 0 :(得分:0)
更改内容对齐后,您需要明确告知按钮重新布局子视图:
func changeAllign() {
buttonA.contentVerticalAlignment = UIControlContentVerticalAlignment.Top
buttonA.setNeedsLayout()
buttonB.contentVerticalAlignment = UIControlContentVerticalAlignment.Bottom
buttonB.setNeedsLayout()
}