我有一个 UIStackView 对象,我在其中添加了一个 UILabel 作为第一个 subview 。这是我的代码的样子:
func createStackView() -> UIStackView? {
var displayLabel = UILabel()
// Set properties of displayLabel
...
let myStackView = UIStackView(arrangedSubviews: [displayLabel, stackViewRow1, stackViewRow2]
return myStackView
}
现在,我希望稍后获得对 displayLabel 对象的引用,以便我可以修改它的文本字段。 我能做到这一点的唯一方法有点像 hack:
var displayPanel = topStackView.arrangedSubviews[0]
if let displayLabel = displayPanel as? UILabel {
displayLabel.text = "Ready"
}
有更好的方法吗?
最佳答案
在属性中存储对标签的引用:
var displayLabel: UILabel?
// then when you create the stack view
self.displayLabel = displayLabel
// to access it later
if let displayLabel = displayLabel {
displayLabel.text = "Ready"
}
关于ios - 如何从父 UIStackView 引用和修改 subview UILabel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42892770/