【发布时间】:2021-01-21 01:37:08
【问题描述】:
我是 Swift 新手。
我正在尝试为我经常使用的所有元素(例如按钮和标签)制作模板文件。
你能告诉我管理模板的最佳方式吗?这样的模板外观包括颜色、圆角半径?
除了使用类文件,我无法弄清楚。
谢谢!
【问题讨论】:
标签: ios swift xcode uibutton label
我是 Swift 新手。
我正在尝试为我经常使用的所有元素(例如按钮和标签)制作模板文件。
你能告诉我管理模板的最佳方式吗?这样的模板外观包括颜色、圆角半径?
除了使用类文件,我无法弄清楚。
谢谢!
【问题讨论】:
标签: ios swift xcode uibutton label
要添加到上述答案,对我有用的是将一系列按钮放入 UIButtons 数组中。在开发应用程序或适应各种屏幕时重新排列它们变得非常简单。
这是一个由 12 个按钮组成的彩色旗帜的简化示例:
var flagButton: [UIButton] = []
for i in 0...11 {
flagButton.append(UIButton())
flagButton[i].frame = CGRect(x: x, y: y, width: width, height: height)
self.view.addSubview(flagButton[i])
}
【讨论】:
就个人而言,我喜欢使用同名类创建一个名为“样式”的新文件。 然后,在其中,我创建了接受您要编辑的参数(例如,按钮)的静态函数。
class Styling {
static func styleButton(_ button: UIButton) {
button.layer.cornerRadius = 25.0
}
}
然后我输入vc就可以调用它了:
Styling.styleButton(myButton)
【讨论】:
你有两种方法可以做到。
1 - 创建你自己的类
final class PrimaryButton: UIButton {
override func awakeFromNib() {
super.awakeFromNib()
backgroundColor = UIColor.red
setTitleColor(UIColor.black, for: .normal)
}
}
2 - 创建扩展配置
extension UIButton {
func style() {
backgroundColor = R.color.primary()
setTitleColor(R.color.black(), for: .normal)
}
}
并在 viewDidLoad 中调用该函数
首选第一种风格
【讨论】: