小编Boo*_* PT的帖子

在 SwiftUI 中,应用程序在滑回一半时冻结且没有任何警告,但在完成之前释放

以下代码重现了该错误:

import SwiftUI

struct ContentView: View {
    @State private var number: Int = 5
    var body: some View {
        NavigationView() {
            VStack(spacing: 20) {
                NavigationLink(destination: SecondView(bottles: $number)) {
                    Text("Click me")
                }
            }
        }
    }
}

struct SecondView: View {
    @Environment(\.presentationMode) private var presentationMode: Binding<PresentationMode>
    @State private var color: UIColor = .black
    @Binding var bottles: Int

    var body: some View {
        Text("I have \(bottles) in my bag")
            .foregroundColor(Color(color))
            .navigationBarTitle(Text("Water Bottle"))
            .navigationBarItems(trailing:
                Button("Click") {
                    self.someFunction()
                }
        )
    }

    func someFunction() {
        if …
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui ios-navigationview property-wrapper

5
推荐指数
1
解决办法
2484
查看次数