0

ユーザーがタップすると瞬時にビューを切り替える 3 つのタブを持つアプリがあります。最初のビューは、フィルタリングする「場所の種類」を選択するテーブル ビューで、2 番目のビューである MapView にそれらのピンのみを表示 (注釈を追加) します。

テーブル セルをクリックすると、次のコードを使用して即座にマップ ビューに切り替わります。

self.tabBarController.selectedIndex=1;

ただし、テーブル ビューの階層をドリルダウンするときに得られるような、右からスライドインするアニメーションでこれを行いたいと考えています。

私はこれを試しました:

[self.navigationController pushViewController:[self.tabBarController.viewControllers objectAtIndex:1] animated:YES];

エラーや警告なしでコンパイルされますが、ビューは切り替わりません。

ナビゲーションコントローラーをタブバーコントローラーに「適用」するにはどうすればよいですか? または、別のビューコントローラーを選択してアニメーションを指定する方法はありますか?

4

1 に答える 1

0

アニメーションを管理するためのAPIがないため、タブバーコントローラーでそれを行うことはできないと思います。タブバーを交換してボタンを使用して同様のものを作成するか、アニメーションを使用せずにビューを切り替えるだけで、独自のビュースタックを管理できます。

別のアプローチは、現在のタブに属するnav-controllerスタックの一部としてマップを表示することです-(navコントローラースタックがあると仮定して)しかし、それは実際にはタブを交換することはなく、新しい場所に移動するだけです現在のスタック。

于 2010-05-24T17:39:32.730 に答える