SwiftUI实现不同TabView标签页中任意导航层级视图之间自动相互跳转那些事儿

Posted 大熊猫侯佩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SwiftUI实现不同TabView标签页中任意导航层级视图之间自动相互跳转那些事儿相关的知识,希望对你有一定的参考价值。



功能需求

在实现一个较复杂的SwiftUI应用时,我们往往需要编程实现从一个标签页A自动跳转到另一个标签页B;其中标签页B视图可能处在多层导航嵌套中:

上图演示的是ios 15.4中的运行效果:我们从Shapes标签页的sheet弹出视图自动跳转到另一个Colors标签页中的二级子视图里,且不管Colors标签页视图当前处在多深的导航嵌套层级中,都没有问题。

这是如何实现的呢?

在本篇博文中,您将学到以下内容:

  • 如何实现对象在运行时访问不存在的属性?
  • 如何通过编程实现TabView的切换?
  • 如何监听TabView的切换?
  • 在iOS中用户如何手动选择切换到任意嵌套的导航视图?
  • 如何一气呵成 关闭sheet弹出视图 + 导航至目标视图 两个动作?
  • iOS 14 和 iOS 15 对于上述导航操作的不同行
与50位技术专家面对面 20年技术见证,附赠技术全景图

以上是关于SwiftUI实现不同TabView标签页中任意导航层级视图之间自动相互跳转那些事儿的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI:TabView 动态强调颜色

SwiftUI Tabview 修复

ScrollView 中的 SwiftUI TabView

SwiftUI 在使用 Firebase 单击注销时隐藏 TabView

如何在 TabView SwiftUI 中保存视图的列表状态

在 SwiftUI 中的特定页面上隐藏标签栏