我正在嘗試使用 for 回圈在 SwiftUI 中設定 Bool 陣列的值,如下所示:
@State var expanded: [Bool] = []
init() {
for i in 0..<5 {
expanded.append(false)
}
print(expanded)
}
但是, print 陳述句只列印[],并且陣列似乎是空的。誰能解釋為什么沒有附加陣列以及如何解決這個問題?
uj5u.com熱心網友回復:
你不能用State, create 和 initialize 來做到這一點,比如
@State var expanded: [Bool]
init() {
var values: [Bool] = []
for i in 0..<5 {
values.append(false)
}
print(values)
_expanded = State(initialValue: values) // << here !!
}
或更好
@State var expanded: [Bool] = Array(repeating: false, count: 5)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/425102.html
