首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以编程方式在NavigationLink中推送iOS16

以编程方式在NavigationLink中推送iOS16
EN

Stack Overflow用户
提问于 2022-06-11 17:14:54
回答 1查看 1.7K关注 0票数 4

在以前的iOS版本中,我以编程方式将NavigationLink推到

代码语言:javascript
复制
NavigationLink(isActive: $searched, destination: { SearchView(originalSearchPhrase: $searchedPhrase) }, label: {})

当我希望isActive变量被推送时,切换它。但是,在iOS16中,所有带有isActive的NavigationLinks都不受欢迎。是否还有一种以编程方式推动NavigationLinks的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-11 17:31:59

我们只需要将相应的链接值推入NavigationStack路径。

这是主要的部分。用Xcode 14 / iOS 16测试

代码语言:javascript
复制
    enum Dest: Hashable {
        case search, details
    }

  @State private var path: [Dest] = []

  var body: some View {
     NavigationStack(path: $path) {
        Button("Go search") { path.append(.search) }  // << here !!
        Divider()
        NavigationLink(value: Dest.search) {
            Text("Search")
        }
        .navigationDestination(for: Dest.self) {
            switch $0 {
            case .search:
                Text("Search Destination Here")

GitHub上的完整代码

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72586394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档