Ios 从UITabBarController显示模式视图
我使用故事板生成了一个新的选项卡式应用程序 到目前为止我有 塔巴控制器 ->FirstViewController ->第二视图控制器 ->ModalViewController 我试图在显示Tabbar控制器之前打开模态视图。我在AppDelegate.m上添加了以下代码Ios 从UITabBarController显示模式视图,ios,uitabbarcontroller,storyboard,Ios,Uitabbarcontroller,Storyboard,我使用故事板生成了一个新的选项卡式应用程序 到目前为止我有 塔巴控制器 ->FirstViewController ->第二视图控制器 ->ModalViewController 我试图在显示Tabbar控制器之前打开模态视图。我在AppDelegate.m上添加了以下代码 showModalView是从application:didfishlaunchingwithoptions:调用的 -(无效)showModalView { UIStoryboard*情节提要=[UIStoryboard情
showModalView
是从application:didfishlaunchingwithoptions:调用的代码>
-(无效)showModalView
{
UIStoryboard*情节提要=[UIStoryboard情节提要,名称:@“MainstryBoard”捆绑包:nil];
GSLoginView控制器*loginView=[情节提要实例化视图控制器的标识符:@“loginView”];
[loginView setModalPresentationStyle:UIModalPresentationFullScreen];
[self.window.rootViewController presentViewController:loginView动画:是完成:NULL];
}
这里是我的输出:
Warning: Attempt to present <ModalViewController: 0x93670d0> on
<UITabBarController: 0x935d170> whose view is not in the window hierarchy!
警告:试图在上显示
其视图不在窗口层次结构中!
之所以出现此问题,是因为您的Appdelegate不知道tabbarcontroller是您的根视图。您应该尝试类似的方法
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
并相应地添加代码。问题是,您应该让应用程序代理知道tabbarcontroller是rootviewcontroller。您之所以会收到此消息,是因为您的应用程序代理不知道tabbarcontroller是您的根视图。您应该尝试类似的方法
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
然后相应地添加代码。问题是,您应该让应用程序代理知道tabbarcontroller是rootviewcontroller。您可以在[here][1]中找到答案。[1] :你可以在[这里][1]找到答案。[1]: