2012-11-16 43 views
3

我有一個初始飛濺視圖控制器後跟一個tabbar控制器,導航控制器和tableview控制器的故事板。我需要從我的一個tableview控制器提交一個動作表。 [UIActionSheet showInView:self.view]不起作用,因爲落在標籤欄區域的觸摸沒有被檢測到,所以我必須使用[UIActionSheet showInTabBar:tabBar]。使用故事板獲取TabBar參考UIActionSheet showFromTabBar

我的問題是如何獲得對標籤欄或UITabBarController的引用。 Xcode不允許我將UITabBarController或UITabBar的引用插口連接到我的任何自定義視圖控制器(大概是因爲故事板上的視圖控制器不是靜態對象,而是僅在必要時創建並通過segues(?)關聯) ,所以你不應該這樣做),但是這使我無法直接進入標籤欄。

這樣做的正確方法是什麼?

+1

想通了.. [self.parentViewController.parentViewController的TabBar] – Colin

回答

1

有可能是一個更好的回答這個問題在這裏: Storyboard - UITabBarController

總之,拉過你的appdelegate的窗根視圖控制器。

我只是做了我的viewWillAppear中下面隱藏我對於該特定視圖標籤欄:

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

好吧,我會說,看起來像一個更好的sln – Colin