gpt4 book ai didi

ios - 遍历 UIView 并更新 UILabel 值

转载 作者:行者123 更新时间:2023-11-28 09:11:51 27 4
gpt4 key购买 nike

func setNavigation(titleText: String, subtitleText: String) {
// Need to update two labels inside of subtitleView

self.navigationItem.titleView = self.subtitleView
}

subtitleView 变量是 UIView 类型。该 View 仅包含两个标签,我需要将它们都设置为函数参数值。我如何遍历 subtitleView 来找到这两个标签并更新它们的值?

我试过的这段代码找到了标签,但未能将文本值更新为“A”:

func setNavigation(titleText: String, subtitleText: String) {
for (var i = 0; i < self.subtitleView.subviews.count; i++) {
if self.subtitleView.subviews[i].isKindOfClass(UILabel) {
var labelReference: UILabel = self.subtitleView.subviews[i] as UILabel
labelReference.text = "A"
}
}

self.navigationItem.titleView = self.subtitleView
}

最佳答案

您可以创建一个自定义类,它是 UIView 的子类,并具有用于 2 个 UILabel 的变量。

或者您可以遍历 UIView 的所有 subview 并设置标签:

for view in self.subtitleView.subviews as [UIView] {
if let labelReference = view as? UILabel{
labelReference.text = "A"
NSLog("Updating Label")
}
}

如果文本没有更新,请检查您是否看到上面的 NSLog 在输出中打印任何内容。如果不是,我相信您的 UILabels 可能为零。

关于ios - 遍历 UIView 并更新 UILabel 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29134054/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com