美文网首页Swift编程
【SwiftUI】Navigation的使用

【SwiftUI】Navigation的使用

作者: SmartisanBool | 来源:发表于2020-03-29 20:03 被阅读0次

    SwiftUI提供了声明式和指令式两种方式来实现页面直接的导航,今天通过示例学习一下这两种的具体使用方式,包括NavigationView & NavigationLink的使用。

    声明式

    SwiftUI提供了NavigationView和NavigationLink,我们可以结合使用两者来实现 经典的列表页-详情页的跳转,示例代码如下:

    image

    以上代码中,我们使用NavigationView将List进行包裹,从而对List页面添加导航栏,同时通过设置navigationBarTitle来添加导航栏标题(声明式UI在此体现的淋漓尽致),需要注意的是我们是对List而非NavigationView添加的navigationBarTitle,因为NavigationView下的所有子View共享导航栏,但是每个子View都可以设置单独的标题。

    接下来我们对List的每个item使用NavigationLink来包裹,并指定destination View。这时我们的item将可以点击并跳转到对应的destination View。

    指令式

    有时候我们需要在符合某种条件时,才触发页面的跳转,NavigationLink通过另外一种方式提供了该种场景的支持。如下面代码所示:

    image

    这种初始化方式中,使用了一个tag的目标值和selection的绑定值,当两者相等时,将触发导航的跳转。

    image

    在详情页,我们可以通过调用presentation的dismiss()来实现popback。


    【关注微信公众号 发现更多精彩】

    相关文章

      网友评论

        本文标题:【SwiftUI】Navigation的使用

        本文链接:https://www.haomeiwen.com/subject/msauuhtx.html