我的Watch扩展应用中有5个界面控制器:
[1]InterfaceController (entry point)
[2]InterfaceController
[3]InterfaceController
[4]InterfaceController
[5]InterfaceController
我希望用户能够从[1]滑动到[2],所以我在Interface.storyboard中创建了一个segue。当我第一次进入该应用程序时,此方法效果很好-我在屏幕[1]的底部看到两个点,并且可以在屏幕和屏幕[2]之间滑动。屏幕[1]具有将用户带到屏幕[3]的按钮。我正在使用此呼叫,该呼叫有效:
WKInterfaceController.reloadRootControllers(withNames:
["[3]InterfaceController"], contexts: [])
同样,当我从屏幕[3]到屏幕[4]轻按按钮时,我也在使用此调用,该调用也有效:
WKInterfaceController.reloadRootControllers(withNames:
["[4]InterfaceController"], contexts: [])
在屏幕[5]上,有一个包含此呼叫的按钮:
a) WKInterfaceController.reloadRootPageControllers(withNames:
["[1]InterfaceController", "[2]InterfaceController"], contexts:
nil, orientation: .vertical, pageIndex: 0)
我也尝试过...
b)
WKInterfaceController.reloadRootControllers(withNames:
["[1]InterfaceController", "[2]InterfaceController"], contexts: [])
在两种情况下,当我点击屏幕[5]上的按钮时,都看到[1] InterfaceController,但是[2] InterfaceController不存在,因此无法滑动即可到达它。甚至更奇怪的是:a)我看不到页面的指示,屏幕底部没有“点” [1]。但是,对于b),我在屏幕[1]上看到一个点(我应该看到两个),但是我看不到第二个点并且不能滑动到屏幕[2]。
您知道发生了什么以及如何解决吗?