如何在代码中向基于页面的导航 Apple Watch 添加新页面

How to add a New Page in code to Page-Based Navigation Apple Watch

我有一个基于页面的应用程序。第一页显示带有 "add timer" 按钮的计时器数量。当他们单击该按钮时,我想附加一个带有新计时器的新页面。然后用户可以向左滑动以查看所有计时器或通过向右滑动返回第一页以查看计数并添加另一个。

现在我知道我可以在故事板中手动设置基于页面,我知道我可以在我的根界面控制器中 presentControllerWithNames 但这会产生双重加载,因为它首先加载界面控制器然后执行 presentControllerWithNames。

有什么建议吗??

WKInterfaceController 有一个 class 方法: class func reloadRootControllersWithNames(names: [AnyObject]!, contexts: [AnyObject]!) 重新加载所有页面。

只需在按钮的操作方法中调用它即可:

WKInterfaceController.reloadRootControllersWithNames(["theFirstController", "theNewTimerController"], contexts: someContexts)