0

私は自分のアプリケーションでタブバー コントローラーを使用しており、最初のタブの下にはナビゲーション コントローラーがあります。

ナビゲーション コントローラー スタックのルートビューは、ユーザーがテキストを入力できる検索バーを表示します。入力を終えた後、ユーザーはサイトの検索サービスを開始します。検索の実行中に「ステータス情報」を表示したいので、別のビューコントローラー ( statusInfoController) をナビゲーションコントローラーのスタックにプッシュします。

検索が完了すると (これには最大 10 秒かかります)、結果テーブル コントローラーがナビゲーション コントローラー スタックにプッシュされます。

uinavigationbarここで、ユーザーをルート ビュー コントローラーに戻す戻るボタンを に表示したいと思います。viewWillAppear結果テーブルコントローラーの -method で次のことを行いました。

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Zurück21" 
                                                                   style:UIBarButtonItemStyleBordered
                                                                  target:self
                                                                  action:@selector(popBackToFirstView)];

    self.navigationItem.leftBarButtonItem = backButton;
    UIBarButtonItem *backButton2 = [[UIBarButtonItem alloc] initWithTitle:@"Zurück22" 
                                                                   style:UIBarButtonItemStylePlain
                                                                  target:nil
                                                                  action:nil];
    self.navigationItem.backBarButtonItem = backButton2;
    self.navigationItem.title = [self.lastSearch suchAnfrage];

    [backButton release];
    backButton = nil;
    [backButton2 release];
    backButton2 = nil;

popBackToFirstViewそして、このクラスに - メソッドを実装しました。のプロパティへのこの 2 番目UIBarButtonItemの割り当てもあります(ユーザーが resulttableview のエントリにタッチすると、navigationController のスタックにプッシュされます)。backBarButtonItemdetailView

私の問題:から来るすべての戻るボタンself.navigationItem.backBarButtonItemは左側に矢印が付いていますが、割り当てられたボタンself.navigationItem.leftBarButtonItemは通常のボタンであり、矢印はありません。

「特別な」戻るボタンに矢印を追加するにはどうすればよいですか? どのスタイルを使用すればよいですか?

または、標準の戻るボタンを使用する必要がありますか? しかし、statusInfoController-View を「ホップ」する他の方法があるはずです。

4

2 に答える 2

1

あなたは間違った種類の解決策を探しています。

本当の問題は、追加のコントローラーをナビゲーション スタックにプッシュするアプローチにあります。ユーザーがナビゲートして戻りたいものでない限り、何もスタックにプッシュしないでください。コードを修正して、検索バーと同じビュー コントローラーにステータス表示と検索結果を表示します。iTunes Store などの組み込みアプリがどのように検索を行っているかをよく見て、その動作を再現してみてください。

于 2011-05-24T19:08:59.667 に答える
0

戻る矢印機能は、SDK がナビゲーション バーの使用を制御できるようにするための統合された部分だと思います。

唯一の解決策 (そう呼ぶことができる場合) は、独自のカスタム ナビゲーション バー クラスを UIViewController のサブクラスとして記述し (さらに簡単にするために NIB を使用します)、必要なすべての柔軟性を得ることができます。

于 2011-05-24T18:18:36.817 に答える