设置堆栈视图内某些元素的空间
本质上,我试图创建一个具有顶部边距和底部边距的元素的UIStackView。例如设置堆栈视图内某些元素的空间
| item one | | item two |
| |
| itemfour |
我已尝试添加一个spacerView:
let textField1 = UITextField(text: "one") let textField2 = UITextField(text: "two")
let textField3 = UITextField(text: "four")
let spacerView = UIView(frame: CGRect(x: 10, y: 10, width: 100, height: 100))
viewStack.addSubView(textField1)
viewStack.addSubView(textField2)
viewStack.addSubView(spacerView)
viewStack.addSubView(textField3)
但是,我设置的spacerView似乎并没有影响其在堆栈视图中创建的空间高度。
PS:如果将两个项目之间的顶部和底部边缘的一个更好的办法,我如添加一个UIView肯定愿意将那感觉真是哈克
回答:
,你可以:
- 做一个spacer视图,这是一个
UILabel
与text
单个空间(" "
)。这会给你一个与你的文本其余部分高度相同的空白行。如果发行版设置为fillEqually
(这也适用于其他模式,但我提到它,因为distribution
在下面的选项#2中很重要)。
,或者
- 创建的
UIView
子类,并覆盖其intrinsicContentSize
,返回一个CGSize
,用于指定要的高度。不要设置此视图的frame
(即让UIStackView
管理视图的框架)。请注意,此方法仅适用于UIStackView
的分配是而不是设置为fillEqually
。
以上是 设置堆栈视图内某些元素的空间 的全部内容, 来源链接: utcz.com/qa/265363.html