2010-11-11 55 views
5

我解壓縮背景線程上的文件,我打電話給主線程上的HomeViewController。在這個視圖控制器上,我有UINavigationBar上的UIBarButtonItem。 如果我點擊這個按鈕它會去StoryViewController和解壓縮的數據在那裏使用。所以我想顯示主視圖控制器,雖然解壓過程沒有完成,因爲我必須隱藏導航欄上的按鈕,當解壓縮開始在背景線程和完成的拉鍊再次我必須顯示按鈕導航欄。我打電話給homeViewController的方法來隱藏和顯示.. 我必須寫在這些方法..?我的意思是如何隱藏和顯示UINavigationBar上的uiBarButtonItem ....?如何隱藏導航條的uibarbutton項目

感謝....

+0

Duplicate http://stackoverflow.com/questions/4216259/how-to-add-bar-button-to-uinavigationbar-in-iphone – 2010-12-24 05:42:34

+0

嘗試不把相同的問題兩次並創建重複。 – 2010-12-24 05:43:40

回答

18

一旦你創建你的UIBarButtonItem說 「myButton的」,你可以添加/使用您的視圖控制器刪除它到你的導航控制器:

if(show) 
    self.navigationItem.leftBarButtonItem = myButton; 
else 
    self.navigationItem.leftBarButtonItem = nil; 
+0

我通過IB添加barbuttonitem到一個導航欄,我應該在編程上添加它 – rockey 2010-11-12 11:38:52

+0

在你的情況下,我沒有看到任何理由通過IB建立它。你可以非常容易地使用下面的代碼實現:[[UIBarButtonItem alloc] initWithBarButtonSystemItem:target:action: – Romain 2010-11-12 15:01:45

+0

UIBarButtonItem * addButton1 = [[UIBarButtonItem alloc] initWithTitle:@「Start」style:UIBarButtonItemStylePlain target:self action:@selector(tourBtnClicked :) ]。 \t self.navigationItem.leftBarButtonItem = addButton1;添加此代碼在viewDidLoad方法,但它不工作沒有添加按鈕應該我也添加導航欄也編程..? – rockey 2010-11-13 23:00:09