2012-07-06 115 views
0

我MainStoryboard的結構是:獲取選項卡選擇事件的視圖控制器

->Tab Bar Controller -> Navigation Controller -> View Controller (Search) 

我想要的行爲,當用戶重新選擇搜索選項卡,就可以了UIScrollView的滾動到頂端。但我不確定如何從TabBarController獲取事件。

我一直在尋找一個關於UITabBarDelegate很多東西,特別是:

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item 

我有,不是很成功地得到這個正常工作,雖然。我非常不確定如何去設置委託(假設是這樣做的)。我嘗試過在IB中進行連接,但它不會讓我。我也嘗試從AppDelegate獲取UITabBar(在看了一些看似相關的答案之後)。

任何指針將不勝感激(除非它們爲空)。

回答

1
UITabBar *aTabBar = [UITabBarItem alloc] init]; 

....你想給aTabBar任何其他修改....

[aTabBar setDelegate:self] 
0

不要忘記將「<UITabBarDelegate>」添加到您試圖指定爲代表的任何對象的「@interface」部分。

對於我自己的代碼,我通常使用一些對象不是應用程序委託(如應用程序委託通常意味着應用程序級的事件,如「應用程序掛起」或「應用程序是回來到前臺」 )。如果將「<UITabBarDelegate>」添加到搜索視圖控制器,請確保您對「didSelectItem」方法所做的任何操作僅適用於搜索視圖控制器。否則,實例化一些不同的對象,如果你想基於哪個標籤欄項目被顯示在各種視圖控制器上執行操作。

+0

我有我的搜尋 - 視圖 - 控制器。我想知道如何真正將其設置爲代表。我試過的東西似乎都沒有做到。 – ratbum 2012-07-06 12:05:30

相關問題