0

複数のリンクを持つルート テーブル ビューを持つナビゲーション コントローラーがあります。各リンクをタップすると、次のビューに移動します (ナビゲーション コントローラーのスタックにプッシュすることにより)。しかし、その「次のビュー」に、(同じナビゲーションコントローラーのスタックにプッシュすることによって) 別のビューにさらに移動する UIButton があるとします...

View Controller-->最初のビュー->2番目のビュー->3番目のビュー........

これで、同じファイル自体でインスタンス化されているため、最初のビューを処理する (そしてそれをナビゲーション コントローラーのスタックに正常にプッシュする) ときに、ナビゲーション コントローラーに簡単にアクセスできます。私の本当の疑問は何ですか-遠く離れたView Controller(たとえば、3番目のビューまたは4番目のビューなど)でNavigation Controllerにどのようにアクセスしますか?別のデリゲートを使用していないことに注意してください。すべてのナビゲーション バー メソッドは 1 つのファイルに実装され、アウトレットを介してナビゲーション コントローラーに接続されています。

4

1 に答える 1

1

ViewController を NavigationController にプッシュすると、ViewController には自動的に navigationController プロパティが設定されます。これは、スタック内のどこにいても、同じ NAvigationController にアクセスできることを意味します。

-アップデート-

navigationController

すべての UIViewController で、そのプロパティにアクセスできます。したがって、スタックにプッシュされた他の UIViewController では、これを実行できるはずです。

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

UIViewControllerのドキュメントを見て、利用可能な他の魔法のプロパティを確認してください。

于 2010-07-14T07:35:48.247 に答える