我正在寻找一种在满足某些条件的情况下在应用启动时从NavigationView在WatchOS应用程序中“以一个级别”显示视图的方法。
我希望获得与我自己按下NavigationLink相同的效果,即能够再次返回NavigationView,如果我选择立即显示所需的视图,则无法实现。
WatchOS也无法使用“ navigationBarItems”,这使得如果不首先单击NavigationLink就无法向后导航。
是否可以通过编程方式“单击” NavigationLink来实现此目的?
我没有watchOS的经验,但是我已经使用NavigationLink 的“ isActive”变体来满足类似的应用程序需求。
在初始视图中,定义一个@State var showOneLevelIn= false
(或其他绑定),如果您希望视图自动导航到第二级,则将该状态var设置为true。NavigationLink的标签为EmptyView(),因此在初始视图中将不可见。
NavigationLink(destination: OneLevelInView(), isActive: $showOneLevelIn, label: { EmptyView() })