在 watchOS 中,是否可以在没有状态栏按钮的情况下显示导致根视图的视图?

In watchOS, is it possible to display a view without a status bar button that leads to the root view?

我希望 watchOS 中的 built-in 锻炼应用程序具有类似的导航结构。我有一个网球规则格式列表,类似于 Workout 应用程序中的锻炼类型。点击一个在新的界面控制器中开始匹配。在 WatchKit 中,据我所知,我只能推送一个接口控制器或呈现一个。这两种方法都有可能导致用户提前从左上角的 V 形取消匹配或在呈现模式中点击状态栏。

锻炼在锻炼期间没有该限制 session,相反,用户通过在其 page-based 导航中切换页面来结束锻炼。 SwiftUI 及其 watchOS 应用程序开发的完全编程方式是否可以实现这一目标?

下面是 Workout 应用程序的初始视图

选择锻炼会切换到左上角标题不可点击的屏幕,这是我想要完成的(初始视图完全隐藏,当您在三个页面之间滑动时不会显示)

我认为你需要看一下 reloadRootPageControllers()

https://developer.apple.com/documentation/watchkit/wkinterfacecontroller/2868441-reloadrootpagecontrollers

基本思路似乎是用此方法中列出的命名控制器替换当前界面控制器。

WKInterfaceController.reloadRootPageControllers(withNames: ["workout","nowPlaying"], contexts: [workoutToRecord], orientation: WKPageOrientation.horizontal, pageIndex: 0)

在我的间歇训练应用程序中,一旦用户select编辑了他们的锻炼,我就会调用此方法。然后该界面被替换为锻炼界面和正在播放页面。

您会注意到,没有后退按钮可以让他们意外 return 到锻炼 select 屏幕。

希望对您有所帮助。

也许您需要修改您的视图:

    .navigationBarBackButtonHidden(true)

你试过了吗?