ナビゲーションコントローラーを使用してストーリーボードアプリを作成するXCode4.5.1では、押されたビューコントローラーの[戻る]ボタンを設定するのに苦労しています。私はセグエを使用していますが、ビューコントローラーは期待どおりに表示されます。ただし、ナビゲーションバーと戻るボタンの名前を動的に変更して、これをViewWillAppearに配置したいと思います。
self.title = @"Select Songs";
[self.backButton setTitle:@"Add"];
ナビゲーションバーのタイトルを変更しますが、戻るボタンには、「追加」というテキストではなく、プッシュされたウィンドウの名前が表示されます。
シミュレートされたメトリックはすべて推測されます。また、Xcodeのビューの下にある黒いトレイにBarButtonItemを追加し、ビューコントローラーのbackButtonをbackButtonに接続しましたが、テキストが表示されません。
次のログメッセージを追加すると、興味深いものが得られます:(それでもタイトルバーは正しく更新されています)
-(void) viewDidAppear:(BOOL)animated {
NSLog(@"%s %@", __FUNCTION__, self.navigationItem.backBarButtonItem);
NSLog(@"%s %@", __FUNCTION__, self.navigationController.navigationItem.backBarButtonItem);
}
2012-10-14 15:18:41.835 xxxx[2690:907] -[ViewController viewDidAppear:] (null)
2012-10-14 15:18:41.838 xxxx[2690:907] -[ViewController viewDidAppear:] (null)