web-dev-qa-db-ja.com

選択されたリスト行の背景は、リスト内でナビゲーション(Swiftui)をナビゲートした後に灰色(選択)のままです。 iOS14 + Xcode12

選択された行は、詳細ビューから戻る後に灰色のままです。 iOS 14上でのみシミュレータと実際のデバイスの両方で起こります。誰もがそれを削除する方法を知っていますか。これはプロジェクト内の唯一のコードです。 (他のナビゲーションや何かはありません)。

let items = ["item1", "item2"]

struct ContentView: View {
    var body: some View {
        NavigationView {
            VStack {
                Text("Hello")
                
                List(items, id: \.self) { item in
                    NavigationLink(destination: Text(item)) {
                        Text(item)
                    }
                }
                .listStyle(PlainListStyle())
            }
        }
//        .navigationViewStyle(StackNavigationViewStyle()) // didn't solve the problem
    }
}
 _

これはそれがどのように見た目であるかです

9
boldi24

これはトリックです。 ZSTACKを作成して空のボタンを上に置くだけです。

var body: some View {
    List {
        ForEach(data, id: \.self) { item in
            ZStack {
                Button("") {}
                NavigationLink(destination: ItemView(item: item)) {
                    ItemRow(item: item)
                }
            }
        }
    }
}
 _
0
Beader Chen