ios - SwiftUI - 表单中的 NavigationLink 单元格在详细信息弹出后保持突出显示

标签 ios swift swiftui uikit

在 iOS 14 中,似乎 NavigationLink s 在返回 Form 后不会被取消选择语境。Form 也是如此Picker s 和其他任何导致另一个 View 出现的东西从列表中(为呈现单元格提供突出显示的上下文)。
我在 iOS 13 中没有注意到这种行为。
一旦另一个 View 被关闭,有没有办法“取消选择”突出显示的行?
示例代码:

struct ContentView: View {

    var body: some View {
        Form {
            NavigationLink(destination: Text("Detail")) {
                Text("Link")
            } 
        }
    }

}
(不同)视觉示例:
Example

最佳答案

在我的情况下,当在我的 NavigationView 之间使用任何 Viewcontent(例如 Text()、Image()、...)时,就会出现这种行为。和 List/Form .

var body: some View {
    
    NavigationView {
        VStack {
            Text("This text DOES make problems.")
            List {
                NavigationLink(destination: Text("Doesn't work correct")) {
                    Text("Doesn't work correct")
                }
            }
        }
    }
}
放置文本() 下方 该列表没有任何问题:
var body: some View {
    
    NavigationView {
        VStack {
            List {
                NavigationLink(destination: Text("Does work correct")) {
                    Text("Does work correct")
                }
            }
            Text("This text doesn't make problems.")
        }
    }
}
这绝对是一个 XCode 12 错误。随着越来越多的人报告这一点,它越早得到解决。

关于ios - SwiftUI - 表单中的 NavigationLink 单元格在详细信息弹出后保持突出显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63934037/

相关文章:

ios - SwiftUI-从JSON文件显示数组

ios - 如何排序(按: ) list the correct way in SwiftUI?

ios - 在 UIActivityViewController 中共享具有名称的数据

iphone - git commit 不会将文件添加到 xcodeproj

ios - 跨多个 UITableViewCells 应用渐变

ios - 动态隐藏状态栏时如何保留状态栏占用的空间?

ios - Swift 包中 SwiftUI 热重载的 "noWorkspaceArena"错误

iphone - 防止触摸通过CCLayer

ios - 在 CustomUIView 中覆盖 init() 会使应用程序崩溃(EXC_BAD ACCESS)

swift - 在 Swift 中关闭模态后运行函数