说我有3个视图,每个视图中都有一个标签。现在我想要的是,基于标签内容,这些标签的内容会根据不同的文本大小和长度为按钮的不同实例单击我希望我的视图适合标签大小。如何实现动态视图
如果视图是红色,红色应括基于标签的高度和宽度,其改变每次标签的文本..
类VerticalFitLayout:VerticalLayout的{
override init(width: CGFloat) {
super.init(width: width)
}
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func layoutSubviews() {
var height: CGFloat = 0
var zeroHeightView: UIView?
for i in 0..<subviews.count {
var view = subviews[i] as UIView
height += yOffsets[i]
if view.frame.height == 0 {
zeroHeightView = view
} else {
height += view.frame.height
}
}
if height < superview!.frame.height && zeroHeightView != nil {
zeroHeightView!.frame.size.height = superview!.frame.height - height
}
super.layoutSubviews()
}
}
我是否正在朝着正确的方向前进?
看到这个图片http://imageresize.org/Output/6e2d4598-355c-4c0c-ae9e-9ce0a4fad574.png 但我想要的是一个视图将根据文本而改变。标签接收来自一个阵列或网络服务的任何输入..
你可以使用自动布局。 https://stackoverflow.com/questions/42340026/make-label-only-as-wide-as-it-needs-to-be/42340556#42340556 –
http://imageresize.org/Output/6e2d4598-355c- 4c0c-ae9e-9ce0a4fad574.png。这是我想要的..我想调整基于文本长度的视图,我只有一个视图将接收可变长度的文本 –
是的这是可能的自动布局。 –