为啥单击 SwiftUI 中的列表项后列表视图项变为灰色?
Posted
技术标签:
【中文标题】为啥单击 SwiftUI 中的列表项后列表视图项变为灰色?【英文标题】: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()")
截图:
【问题讨论】:
【参考方案1】:在 ios-15 中运行良好。您可以尝试将“.isDetailLink(false)”添加到 NavigationLinks。
【讨论】:
tnx 这么多,我这样更新“ List(0.. 【参考方案2】:您可以通过将选择样式设为“无”来实现此目的
.onAppear
UITableViewCell.appearance().selectionStyle = .none
【讨论】:
tnx 这么多,但仍然是同样的问题。 @Sas13 将此代码放入 View init() 我在 UIKit 中使用了很多次,但对于 SwiftUI Picker 视图却不起作用。以上是关于为啥单击 SwiftUI 中的列表项后列表视图项变为灰色?的主要内容,如果未能解决你的问题,请参考以下文章