我想要一个带图标的UILabel。
所以我创建了一个实用程序,它将创建标签、图标并处理它们之间的间距约束等。
现在,当我在客户端代码中使用此组件时,我再次需要在情节提要中创建 UILabel。
@IBOutlet weak var stateLabel: iconLabel!
...
stateLabel.style = withIcon
和
实用程序具有原型代码:
struct style {
static let withIcon = style(
iconName = x.png,
textColor: white
}
class iconLabel {
createLabel() {
label = UILabel()
addSubview(label)
//deal with constraints
}
createIcon() {
icon = UIImageView
addSubview(icon)
//deal with constraints
}
}
所以问题是:1)我必须在我的客户端+我的实用程序中具有标签。如何避免这种情况。2)如果我从客户端文件中删除标签,则该标签与故事板中的其他标签有约束,我不明白如果我删除它,我如何使用我的实用程序。3)如果我不在实用程序中重新创建标签,那么如何在标签和图标之间设置约束。4)如果我不创建实用程序,那么每个客户端都必须具有用于图标的UIImageView和用于图标和标签之间约束的代码。所以我想创建一个实用程序。
有什么提示吗?
谢谢。
看看苹果的这个用于创建自定义视图的基本教程:自定义控件