【发布时间】:2011-05-18 06:25:01
【问题描述】:
我的应用有两种不同的模式。应用程序委托中有一个标签栏控制器。有两个选项卡,都使用子类视图控制器。这两个视图控制器基本上都包含一个导航控制器。导航控制器有它们的根视图控制器,通常在更改屏幕时,我只需推送和弹出相应导航控制器的控制器。这具有(正常)效果,即底部标签栏始终可见,一切都很好。
这一次我想以模态方式呈现一个屏幕,以便用户只能使用两个按钮确认或取消页面,即我想隐藏底部标签栏。这将是我认为以模态方式呈现视图的情况,但视图呈现在导航控制器边界内,因此底部标签栏仍然可见,这会导致应用程序导航混乱。我不确定模态呈现的视图怎么可能没有隐藏标签栏。这里的大多数问题似乎都有相反的问题(想要(不正确地)呈现模态视图并让标签栏保持可见)。
这些是我的尝试:
[self presentModalViewController:controller animated:YES]; // inside tab bar controller :-(
[self.tabBarController presentModalViewController:controller animated:YES]; // nothing is displayed. The new controller is instantly deallocated.
[self.navigationController presentModalViewController:controller animated:YES]; // inside tab bar controller :-(
调查一下,self.tabBarController 实际上是 nil。似乎没有返回标签栏控制器的链接...我想,要在标签栏顶部模态显示,我需要获得该标签栏控制器的链接?
【问题讨论】:
标签: ios uitabbarcontroller modal-dialog