iOS
UINavigationController
サーチ…
備考
ドキュメントから:
UINavigationControllerクラスは、階層コンテンツのナビゲーションを管理する特殊なView Controllerを実装しています。このナビゲーションインターフェイスを使用すると、データを効率的に表示でき、ユーザーがそのコンテンツを簡単にナビゲートできるようになります。通常、このクラスをそのまま使用しますが、サブクラス化してクラスの動作をカスタマイズすることもできます。
ナビゲーションコントローラでのポップアップ
以前のビューコントローラ
前のページにポップバックするには、これを行うことができます:
迅速
navigationController?.popViewControllerAnimated(true)
目標-C
[self.navigationController popViewControllerAnimated:YES];
ルートビューコントローラへ
ナビゲーションスタックのルートにポップするには、次のようにします。
迅速
navigationController?.popToRootViewControllerAnimated(true)
目標C
[self.navigationController popToRootViewControllerAnimated:YES];
NavigationControllerを作成する
ストーリーボードで、ナビゲーションコントローラに埋め込むViewControllerを選択します。
次に、[エディタ]> [埋め込み先]> [ナビゲーションコントローラ]に移動します
そしてそれはあなたのナビゲーションコントローラを作成します
プログラムでナビゲーションコントローラにビューコントローラを埋め込む
迅速
//Swift
let viewController = UIViewController()
let navigationController = UINavigationController(rootViewController: viewController)
//Objective-C
UIViewController *viewController = [[UIViewController alloc] init];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
ビューコントローラをナビゲーションスタックにプッシュする
//Swift
let fooViewController = UIViewController()
navigationController?.pushViewController(fooViewController, animated: true)
//Objective-C
UIViewController *fooViewController = [[UIViewController alloc] init];
[navigationController pushViewController:fooViewController animated:YES];
目的
UINavigationController
は、 navigation stack
と呼ばれるビューコントローラのツリー状の階層を形成するために使用されnavigation stack
。
開発者の視点から:
独自に作成したコントローラに接続し、無料の階層マネージャと一般的なUIプレゼンターのすべての利点を無償で取得できます。 UINavigationController
は、新しいコントローラへの遷移をアニメートし、自動的にバック機能を提供します。 UINavigationController
また、 navigation stack
内の他のすべてのコントローラにアクセスし、いくつかの機能やデータへのアクセスを助けます。
ユーザーの視点から:
UINavigationController
は、ユーザーが現在いる場所(ナビゲーションバーのタイトル)と、前の画面のいずれかに戻る方法(埋め込みボタン)を覚えてUINavigationController
役立ちます。