2015-04-20 62 views
2

在我的UINavigationController中,我推送了三個UITableViewController。在我的第二個我的UITableViewController在viewDidLoad設置:UINavigationItem BackButton顯示與UINavigationItem相同嗎?

self.navigationItem.title = "controller2" 
self.navigationItem.backBarButtonItem?.title = "c2" 

然後我做到以下幾點。從UITableViewController開始,一推UITableViewController兩個,並在UINavigationController上推UITableViewController三。當我到達UITableViewController三時,後退按鈕顯示controller2而不是c2

我做了第一個UITableViewController相同的設置,當我到達UITableViewController兩個後退按鈕顯示正確的標題。

爲什麼後退按鈕顯示錯誤的標題?

回答

3

作爲回答Here -

後退按鈕的標題可以是:

  1. 以前的視圖控制器
  2. 以前的視圖控制器的導航項目的名稱後面的標題按鈕

如果您正在設置後退按鈕對於當前視圖控制器的導航項目,您是 未設置當前視圖中顯示的按鈕。您實際上正在設置後退按鈕,如果您將 另一個視圖控制器從它推入,將會使用該按鈕。

或 您可以初始化帶標題的新後退按鈕。把它放在視圖控制器的viewDidLoad()中。

self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "c2", style: UIBarButtonItemStyle.Bordered, target: nil, action: nil)