2
任何想法,爲什麼這個工程:UITabBar標誌狀態
[[[[[self tabBarController] tabBar] items] objectAtIndex:2]
setBadgeValue:@"Hello"];
但是,這不?
[[self tabBarItem] setBadgeValue:@"Hello"];
我寧願不必提供(在上面的代碼2)顯式的標籤欄的索引。此外,有沒有辦法從視圖控制器中獲取標籤欄索引的情況下,第一個片段是唯一的方法來做到這一點?
謝謝。
你能澄清一下嗎?我的印象是,如果您將視圖控制器添加到IB中的選項卡欄中,則視圖控制器中的tabbaritem將自動設置。變量tabBarItem絕對不是零,它有正確的標題,但它不是通過tabBar items數組訪問的地址。 – 2009-09-08 20:45:36
剛剛在Apple文檔中發現了這一點:「標籤欄項目通過其相應的視圖控制器進行配置。要將標籤欄項目與視圖控制器相關聯,請創建UITabBarItem類的新實例,併爲視圖控制器進行相應配置,以及將其分配給視圖控制器的tabBarItem屬性如果你沒有爲視圖控制器提供一個自定義的標籤欄項目,視圖控制器將創建一個默認項目,其中不包含圖像和來自視圖控制器標題屬性的文本。想想我只是通過索引來訪問它,而不是創建一個索引。 – 2009-09-08 20:48:46
啊,我看到你現在在做什麼,看起來好像你給的例子應該工作......我想到可能發生的事情是,一旦你分配一個viewController到你的tababrcontroller它捕獲該tabbaritem和更高版本的viewController tabBarItem屬性不更新他的按鈕,因爲tabBarViewController不檢查更新.. – Daniel 2009-09-08 21:15:45