1

如何設置我的RootViewControllerself.navigationItem.backBarButtonItem,以便後退按鈕是長方形而不是後退箭頭?我想這樣做是因爲我使用自定義backBarButtonItem以及四格網格圖像(如Facebook iPhone應用程序用作其主頁按鈕的九格圖像)。如何使UINavigationItem爲backBarButtonItem矩形?

目前,-[RootViewController initWitNibName:bundle:],我做的:

self.navigationItem.backBarButtonItem = 
[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"go-home.png"] 
           style:UIBarButtonItemStylePlain 
           target:nil action:NULL]; 

注:因爲我使用ARC這不會導致內存泄漏。

但是,這使得按鈕有一個左箭頭。是否有一個簡單的修復,使按鈕在所有方面矩形?

我知道我可以爲所有可以從RootViewController推送的視圖控制器設置leftBarButtonItem,但有五個不同的選項,所以會有很多重複。我想我可以創建一個方法,例如,+[Utils homeBarButtonItem],創建上面的按鈕,然後在五個視圖控制器的-viewDidLoad方法的每一箇中調用self.navigationItem.leftBarButtonItem = [Utils homeBarButtonItem];,但我想知道是否有簡單的修復程序,我錯過了。

+0

聽起來你已經花了更多的時間來思考這個問題,而不是像你所描述的那樣去做;)(沒有更快捷的方式btw)。 – ader

回答

3

不幸的是,您建議的唯一方法是使用leftBarButtonItem並使用按鈕生成器實用程序類。

設置你的leftBarButtonItem的動作彈出視圖控制器,你就完成了。

[self.navigationController popViewControllerAnimated:YES];