2016-11-04 13 views
0

UINavigationControllerにはUITabBarCotnrollerが接続されています。 私はViewControllerを押すと、そのクラスに私はちょうど空のタイトルバックボタン画像を設定しています。このコードにより、そのviewWillAppear方法ナビゲーションバー戻るボタンpopViewControllerの後にテキストを変更

self.navigationController?.navigationBarHidden = false 
    let yourBackImage = UIImage(named: "Back.png") 
    self.navigationController?.navigationBar.backIndicatorImage = yourBackImage 
    self.navigationController?.navigationBar.backIndicatorTransitionMaskImage = yourBackImage 
    self.navigationController!.navigationBar.backItem?.title = ""; 

でこのコードを書くとき。 しかし、私は現在のプッシュされた画面上に別の画面をプッシュし、それを再びタップすると、 "戻る"というテキストのタイトルが表示されます 私はすべてのビューコントローラのviewWillAppearメソッドを押して上記のコードを書いています。

+0

あなたはそのようなタイトルを変更してみてください: 'NavigationItem.BackBarButtonItem =新しいUIBarButtonItemを( ""、UIBarButtonItemStyle.Plain、NULL);'。これはXamarin C#のコードですが、Swiftに変換するのは本当に簡単です。 – Andrius

+0

あなたが直面している唯一の問題はタイトルの復活ですか? – Joe

+0

はい、バックのタイトルは唯一の問題です@ジョー –

答えて

1

backIndicatorImagebackIndicatorTransitionMaskImageを設定するとviewDidAppear()で動作すると思われますが、バックテキスト自体を設定する際に問題が見つかりました。私はいつも新しいボタンでテキストを設定しなければなりませんでしたが、移行しているコントローラーからそれをやり直すほうが効果的でした(それは彼らが戻ってくる見方なので、ユーザーから移行していた)。

viewWillAppear()でこれを試すことができますが、これは私のprepare(for:, sender:)機能で使用しています。

let backItem = UIBarButtonItem() 
backItem.title = "" // In my case, I was setting it here; you would blank it out 
self.navigationItem.backBarButtonItem = backItem 
関連する問題