我有一个垂直堆栈视图,其中包含许多水平堆栈视图。如何在水平堆栈视图之间创建1px分隔线?
答案 0 :(得分:0)
只需在水平堆栈视图中的两个最中间控件之间添加宽度为1-2px且高度与每个水平堆栈视图相同的UIView。假设没有顶部或底部间距,它会给出垂直线没有断裂的印象,或者如果你不介意垂直线上的断裂,那么不要担心去除顶部或底部间距。
OR
你可以利用UIStackView可以获取子视图的事实,并且只计算中心x,并且y为0,添加一个2px宽的UIView作为UIStackView的子视图。
类似的东西:
UIStackView sv = new UIStackView();
UIView ViewLine = new UIView();
ViewLine.Frame = new CGRect(CentreX, 0 , 2f , heightofstackview );
sv.AddSubview();
答案 1 :(得分:0)
您可以创建分隔符视图:
类SeparatorView:UIView {
init() {
super.init(frame: .zero)
setUp()
}
override init(frame: CGRect) {
super.init(frame: frame)
setUp()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
private func setUp() {
backgroundColor = .gray
}
override var intrinsicContentSize: CGSize {
return CGSize(width: UIView.noIntrinsicMetric, height:0.5)
}
}
并将其添加到水平视图之间的StackView中:
stackView.addArrangedSubview(horizontalView)
stackView.addArrangedSubview(SeparatorView())
这将创建一条灰色的细线分隔视图。