繁体   English   中英

如何实现动态视图

[英]how to implement dynamic view

假设我有3个视图,每个视图中都有一个标签。 现在我想要的是,基于标签内容,对于按钮的不同实例,该内容具有不同的文本大小和长度,我希望我的视图适合标签大小。

如果视图是红色,则红色应根据标签的高度和宽度(每次都会更改)将标签的文本括起来。

class 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但我想要的是一个随文本而变化的视图。 标签从数组或Web服务接收输入。

使用自动版式

这样,UILabel的行数设置为0。

在此处输入图片说明

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM