2013-03-14 48 views
0

所以這就是我想要發生的事情。我有很多標籤欄項目,我有一個特定的項目,說「共享」。當用戶點擊它時,會彈出一個共享屏幕,而不是我點擊該項目並查看該項目頁面上的內容。TableViewController代表沒有被調用

爲了簡單起見,我想要一個動作,當我點擊標籤欄圖標時被調用。所以,我看這件事,發現這個委託:

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

在此代表我想一些事情發生,比如,的NSLog(@「東西」) 但這種委託不會被調用。我已經在.h中設置了委託,並且已經將這些代碼放入了我的TableViewController .m和我的DisplayViewController.m中.h都有委託集。我不知道爲什麼它沒有被調用,但我會把我的代碼放在這裏解釋。

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item 
{ 
    if(item.tag == 5) 
    { 

    NSLog(@"Something"); 

    } 
} 

,並在我的.h:

@interface PhotosTableViewController : UITableViewController <UITabBarControllerDelegate, UITabBarDelegate> 
+0

您是否將標籤欄的代表設置爲實例化委託協議和方法的對象? – 2013-03-14 23:50:58

+0

NSLog(@「Something」)編碼正確。我只是忘了添加「在問題 – doc92606 2013-03-14 23:51:03

+0

的問題末尾使用UITabBarController或UITabBar?爲其設置了一個代理? – 2013-03-14 23:53:05

回答

1

兩個.H的有委託集。

呼叫yourTabBar.delegate = self;

TableViewController .mDisplayViewController.mviewDidLoad方法。

+0

當我嘗試爲標籤欄控制器創建文件時,以及當我嘗試將這些文件連接到視圖控制器時,它會拒絕它。我去設置它的代表自己現在? – doc92606 2013-03-15 00:22:38

+0

我不能得到你..你可以請你發送你的示例代碼[email protected]? – 2013-03-15 00:25:35

+0

事情是我還沒有宣佈我的TabBarController作爲一個對象呢。我無法創建從UITabBarController繼承並與TabBarController鏈接的文件。我可以創建該文件,但是當我轉到我的tabbarcontroller的屬性時,它不會允許我使用我的*自定義類* – doc92606 2013-03-16 02:20:13