0

viewControllerがnavigationStack(おそらくスタックの最上位)にある場合、
自動的にself.navigationItemを所有しますか?

質問やチュートリアルでは、あまりコンテキストがなくてもself.navigationItemとself.navigationControllerが表示され続け、その変数がどこに設定されているのか疑問に思います。

  • 編集

迅速な回答に感謝します。
公式ドキュメントのどこで情報(self.navigationItemについて)を見つけたでしょうか?

4

3 に答える 3

1

はい、スタック内にあるself.navigationItem場合は、ナビゲーションスタック内にない場合は、self.navigationItemnilになります。

このプロパティは、ObjectiveCクラス拡張で定義されています

@interface UIViewController (UINavigationControllerItem)

UIViewControllerに関連するのプロパティを定義しますnavigation controller

于 2012-06-28T07:31:38.177 に答える
0

はい、ナビゲーションコントローラーのスタックに追加されたすべてのコントローラーに設定されたプロパティself.navigationItemとプロパティが表示されます。これらのプロパティは、またはself.navigationControllerを呼び出すと設定されます。pushViewController:animatedinitWithRootViewController:

于 2012-06-28T07:33:20.843 に答える
0

あなたが特にそれを言わない限り、それらはあなたによって設定されません。直接割り当てられていない他のプロパティもあります。たとえば、次のようになります。

self.tabBarController;

self.parentViewController;

そのためnil、プロパティにアクセスする前に、そうであるかどうかを確認する必要があります。

于 2012-06-28T07:33:48.753 に答える