Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 配置选项卡栏';在加载视图之前选择的viewcontroller_Ios_Objective C_Uitabbarcontroller - Fatal编程技术网

Ios 配置选项卡栏';在加载视图之前选择的viewcontroller

Ios 配置选项卡栏';在加载视图之前选择的viewcontroller,ios,objective-c,uitabbarcontroller,Ios,Objective C,Uitabbarcontroller,响应一组特定的远程通知,我希望应用程序在选项卡栏的某个选项卡上打开 在应用程序中:(UIApplication*)应用程序didReceivereMotentification:(NSDictionary*)用户信息 我有 MainTabViewController *tabBarController = (MainTabViewController *)self.window.rootViewController; tabBarController.initialTab =

响应一组特定的远程通知,我希望应用程序在选项卡栏的某个选项卡上打开

应用程序中:(UIApplication*)应用程序didReceivereMotentification:(NSDictionary*)用户信息

我有

 MainTabViewController *tabBarController = (MainTabViewController *)self.window.rootViewController;
        tabBarController.initialTab = 2;

        MyVC *vc = (MyVC *)tabBarController.selectedViewController;

        [vc doStuff];
with
MainTabViewController
UITabBarController

和设置
initalTab
将设置
main选项卡viewcontroller

问题是,在应用程序第一次打开时,第三个选项卡(initialTab=2)还没有实例化,所以我无法预先配置它


我如何加载该选项卡的viewcontroller(以便访问它)或自己实例化它以便配置它(并使选项卡栏继续正常工作)

属性如何工作?如果您使用
UITabBarController
selectedIndex
属性,它将起作用。您的意思是调用通知委托时MainTabViewController的启动例程未完成,您可以设置一个值,以便在TabBarController实例化完成后进行检查。使用selectedIndex工作,因为这将导致选项卡栏切换到所选控制器,而这(对我来说)仅在我已经点击选项卡栏图标并且控制器已经实例化的情况下才起作用。如果应用程序以全新方式启动,则不会切换到新选项卡检查应用程序以全新方式启动时rootViewController是否为零。我不认为这是tabBarViewController的ViewController的问题。