2010-04-17 101 views
0

我有一個「UIBarButtonItem」的引用,有沒有辦法,我可以添加一個自定義的「後退導航按鈕」該項目,當它不是基於導航的視圖的一部分?你可以手動添加到iPhone/iPad的導航欄後退按鈕項目?

我可以添加一個左鍵:

 
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] 
initWithTitle:@"Custom Back" 
style:UIBarButtonItemStylePlain target:self 
action:@selector(backAction:)]; 

menuItem.backBarButtonItem = backButton; //This doesn't seem to work. 

menuItem.popOverNavigationItem.leftBarButtonItem = backButton; //This shows a normal button 

所以我怎麼可能讓最左邊的按鈕看起來像一個後退導航按鈕?

UPDATE:這等問題回答了我的問題,這是導致我嘗試做這個非標準UI設置的根:
iPad: Merge concept of SplitViewController and NavigationController in RootView?

回答

2

我想設置後退按鈕的正確方法是設置它適用於您將要返回的視圖控制器。例如:

RootViewController > DetailViewController 

如果你想後退按鈕說:「自定義後退」,而你在DetailViewController,你有實際設置RootViewController的的後退按鈕「自定義後退」。

希望是有道理的。

+0

我認爲這是不對的。最接近這一點的是將'RootViewController'的'title'屬性設置爲出現在'DetailViewController'後退按鈕上的文本。 編輯:似乎是對的。看看:http://www.retainrelease.com/blog/?p=11 – bddckr 2010-04-18 08:18:54

+0

我的問題是如果你可以做到這一點NavBarItem而不使用NavBarController。 (這是在SplitViewController示例代碼中出現的)。 – MikeN 2010-04-18 17:47:46

+0

不是沒有導航控制器,但是您不必總是擁有帶導航控制器的導航欄,爲什麼不使用導航控制器? – 2010-04-19 05:03:35

0

剛剛遇到這個問題:我認爲答案是「否」。您需要一個控制器層次結構。