1

タブバーアプリケーションを作成しました。viewcontroller1でボタンをクリックすると、現在のモーダルビューコントローラーがあります。ナビゲーションコントローラーを使用すると、モーダルビューからViewcontroller2に移動できます。私の問題は、viewController2に移動すると、タブバーが非表示になることです。タブバーを表示するにはどうすればよいですか?

4

1 に答える 1

1

ビューコントローラをナビゲーションコントローラのスタックにプッシュしている場合、タブバーはそのまま残ります。

[self.navigationController pushViewController:viewController2 animated:YES];

ただし、モーダルビューコントローラーとして表示している場合は、最前面/最前面のビュー(フルスクリーンで表示)になるため、ビューコントローラーが閉じられるまでタブバーが非表示になります。

[self presentViewController:viewController2 animated:YES completion:nil];

モーダルビューコントローラーのポイントは、アプリ内で他のことを行う前に、ユーザーに提示されたビューコントローラーを処理するように強制することです。viewController1にアクセスする必要がある場合は、ビューコントローラを表示する前にviewController2、でプロパティを宣言しviewController1 *previousViewControllerviewController2設定viewController2.previousViewController = self;(で)することができます。viewController1または、ビューをタブバーコントローラーのビューに追加する(フレームを定義するときにタブバーの高さを差し引く)こともできます。

于 2012-11-19T17:55:24.670 に答える