0

ビュー間を移動するためのナビゲーション コントローラーを実装しました (ルート ビュー コントローラー内)。

MainWindow.xib では、ナビゲーション バーを実装しましたが、オプションを非表示にしています。

他のビューでは、xib ファイルで他のナビゲーション バー オブジェクトを使用し、それらを使用してビュー間を移動しました。問題は戻るボタンです。

    UINavigationItem *navigItem = [[UINavigationItem alloc]autorelease];

    UIBarButtonItem *backBtn = [[UIBarButtonItem alloc] 
                                                  initWithTitle:@"Back" 
                                                             style:UIBarButtonItemStylePlain 
                                                           target:nil 
                                                           action:@selector(back:)];

   navigItem.backBarButtonItem = backBtn;

   [self.navigationBar setItems:[NSArray arrayWithObject:navigItem]];

戻るボタン(矢印の形)が表示されない

または、左バー ボタンを使用できますが、同じではありません。このコードは次のように実行されます。

    UINavigationItem *navigItem = [[UINavigationItem alloc]autorelease];

    UIBarButtonItem *backBtn = [[UIBarButtonItem alloc] 
                                                  initWithTitle:@"Back" 
                                                             style:UIBarButtonItemStylePlain 
                                                           target:nil 
                                                           action:@selector(back:)];

   navigItem.leftBarButtonItem = backBtn;

   [self.navigationBar setItems:[NSArray arrayWithObject:navigItem]];

私の質問:

Interface Builder でナビゲーション バーを使用するときに BackBarButtonItem を実装することは可能ですが、ルート ビュー コントローラーには別のナビゲーション バー コントローラーがあることを考慮します (ただし非表示)??

4

1 に答える 1

0

UINavigationController を使用している場合は、UniavigationBar または nav アイテムを無料で取得できるため、実装する必要はありません。

戻るボタンのテキストを設定するには、戻るボタンが戻るビューのタイトルを設定するか (そして、一番上に押されたビューの戻るボタンがこの名前を取得します)、同じビューの backBarButtonItem のタイトルを設定します。

于 2012-10-29T06:28:02.380 に答える