【问题标题】:why list view items become gray after click the list items in SwiftUI?为什么单击 SwiftUI 中的列表项后列表视图项变为灰色?
【发布时间】:2021-07-12 19:14:30
【问题描述】:

我在 SwiftUI 中有列表项,当我单击列表项时,当我返回列表视图菜单时它保持灰色。有什么解决办法吗?

DarkMenuView:

struct DarkMenuView: View {
    @AppStorage("isDarkMode") private var isDarkMode = false
    
    var body: some View {
        VStack{
            Picker("Mode" , selection: $isDarkMode) {
                Text("Light")
                    .tag(false)
                
                Text("Dark")
                    .tag(true)
            }.pickerStyle(SegmentedPickerStyle())
            .padding()
            List(0..<5, id: \.self) { num in
                NavigationLink(destination: Text("\(num)")) {
                Text("\(num)")
                    
                }
                    
            }
        }.navigationTitle("Dark Menu")
        .onAppear() {
                    print("DarkMenuView.onAppear()")
                }
    }
}

截图:

【问题讨论】:

    标签: swift swiftui swiftui-list


    【解决方案1】:

    在 ios-15 中运行良好。您可以尝试将“.isDetailLink(false)”添加到 NavigationLinks。

    【讨论】:

    • tnx 这么多,我这样更新“ List(0..
    【解决方案2】:

    您可以通过将选择样式设为“无”来实现此目的

    .onAppear {
        UITableViewCell.appearance().selectionStyle = .none
    }
    

    【讨论】:

    • tnx 这么多,但仍然是同样的问题。
    • @Sas13 将此代码放入 View init() {}
    • 我在 UIKit 中使用了很多次,但对于 SwiftUI Picker 视图却不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-31
    • 2014-11-21
    • 1970-01-01
    • 1970-01-01
    • 2011-08-21
    • 2019-03-05
    • 1970-01-01
    相关资源
    最近更新 更多