Hallo, ich möchte just4fun WFC(Wave Function Collapse) in SwiftUI implementieren.Ich habe nur ein komisches Problem.Der Output von der Funktion collapseTile()
ist immer false
): Hier ist mein Code:
struct tile: View {
@State var MapSize: CGFloat
@State var DIM: CGFloat
@State var tiles = [0,1,2]
@State public var collapse = false
var body: some View {
ZStack {
RoundedRectangle(cornerRadius: 1.0)
.frame(width: MapSize/DIM,height: MapSize/DIM)
.foregroundStyle(collapse ? LinearGradient(Color.red,Color.green) : LinearGradient(Color.black,Color.gray))
.aspectRatio(1.0,contentMode: ContentMode.fit)
Text("\(String(collapse))")
.font(.custom("ehhh", size: 5.0))
}
}
func collapseTile() {
collapse = true
print("Toggle collaps: \(collapse)")
}
}
Ich verstehe nicht wieso und freue mich über Rückmeldung wie man das fixt oder schlauer macht.
Außerdem wollte ich fragen ob jemand weiß wie man aus .json files in swift playground liest.Das wäre nicht essenziell aber doch gut.Sonst müsste ich ein paar Umwege nehmen…
Die Ausgabe der Funktion CollapseTile() ist immer falsch).
Ich verstehe nicht.
- Die Funktion ändert den Wert von Collapse nicht.
- Und es wird nicht im Code verwendet!
Du solltest schreiben:
var collapse = false
func collapseTile() {
collapse.toggle()
print("Toggle collaps: \(collapse)")
}
The output of the collapseTile() function is always false).
I don't understand.
- The function does not change the value of collapse.
- And it is not used in the code!
You should write:
var collapse = false
func collapseTile() {
collapse.toggle()
print("Toggle collaps: \(collapse)")
}