使用故事板获取UIActionSheet showFromTabBar的TabBar参考

时间:2012-11-16 20:47:33

标签: uitabbarcontroller storyboard uitabbar uiactionsheet

我有一个故事板,其中包含一个初始启动视图控制器,后跟一个tabbar控制器,导航控制器和tableview控制器。我需要从我的一个tableview控制器中提供一个操作表。

[UIActionSheet showInView:self.view]不起作用,因为没有检测到标签栏区域中的触摸,所以我必须使用[UIActionSheet showInTabBar:tabBar]。

我的问题是如何获得对标签栏或UITabBarController的引用。 Xcode不允许我将UITabBarController或UITabBar的引用插座连接到我的任何自定义视图控制器(可能是因为故事板上的视图控制器不是静态对象,而是仅在必要时创建并通过segues(?)相关联) ,所以你不应该这样做),但是这让我无法直接进入标签栏。

这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

这个问题可能有更好的答案: Storyboard - UITabBarController

简而言之,将根视图控制器从appdelegate窗口拉出。

我在viewWillAppear中执行了以下操作,以隐藏该特定视图的标签栏:

AppDelegate *ap = (AppDelegate *)[[UIApplication sharedApplication] delegate];
UITabBarController *tc = (UITabBarController *)[[ad window] rootViewController];
[[tc tabBar] setHidden:YES];