gpt4 book ai didi

swift - 在 Swift 中循环遍历嵌套堆栈

转载 作者:行者123 更新时间:2023-11-28 13:49:50 25 4
gpt4 key购买 nike

我希望能够更改 iOS 中按钮的颜色,这些按钮位于任意数量的水平堆栈内,而水平堆栈位于单个垂直堆栈内。

我想做这样的事情

for view in self.view.subviews as [UIView] {
if let hstack = view as? UIStackView {
for btn in hstack.arrangedSubviews {
if let btn = view as? UIButton {
btn.backgroundColor = UIColor.red
}
}
}
}

但是我收到一条警告线

"Immutable value 'btn' was never used; consider replacing with '_' or removing it"

最佳答案

你有 2 个名为 btn 的常量。第一个由 for 循环创建,第二个由 if let 创建。未使用 for 循环 btn

我建议您这样编写代码:

for case let hstack as UIStackView in self.view.subviews {
for case let btn as UIButton in hstack.arrangedSubviews {
btn.backgroundColor = .red
}
}

这使用模式从数组中选择特定类型的项目。第一个循环仅选择类型为 UIStackView 的 subview 。内部循环仅选择类型为 UIButton 的已排列 subview 。

关于swift - 在 Swift 中循环遍历嵌套堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54836696/

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