ios – 在发布循环中基于页面的“reloadRootControllersWithNames:”?

前端之家收集整理的这篇文章主要介绍了ios – 在发布循环中基于页面的“reloadRootControllersWithNames:”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
- (void)awakeWithContext:(id)context {
[super awakeWithContext:context];
    [WKInterfaceController reloadRootControllersWithNames:@[@"pageOne",@"pageTwo"] contexts:nil];
}

遵循Apple的指导方针

Call this method to reload the pages in your app’s page-based interface. At launch time,you use this method to customize the set of pages you want displayed.

在发布时,只会导致循环.每次重新加载调用awakeWithContext或将一次又一次地激活或初始化.

有没有更好的方法可以在启动循环时重新加载基于页面的应用程序?

解决方法

这是WatchKit应用程序的常见问题,因为我们不再需要UIApplicationDelegate来处理此类设置.一个好方法是按如下方式构造代码

> MainInterfaceController(故事板中的主要链接指向此处)
> PageOneInterfaceController – 您在页面集中显示的第一个界面
> PageTwoInterfaceController – 页面集中的第二个界面

MainInterfaceController永远不会实际显示.您将始终启动到另一组接口控制器,具体取决于MainInterfaceController.awakeWithContent()中随附iOS应用程序的缓存状态.这样,您使用MainInterfaceController的方式类似于我们在iOS中使用UIApplicationDelegate来设置窗口和根视图控制器.

我在一个应用程序中使用了这种方法,该应用程序有许多不同的页面集可供选择,并且它运行良好.

猜你在找的iOS相关文章