self.navigationController.navigationItemとself.navigationItemの違いは何ですか?私は、アプリケーション全体を通してUINavigationControllerを使用しています。また、viewControllerのviewDidLoadメソッドの1つでself.navigationController.navigationItem.rightBarButtonItemsを使用すると、配列は空です。しかし、self.navigationItem.rightBarButtonItemsを使用すると、私はバーのボタン項目を見ます。 2つのコールの違いは何ですか?ありがとう!self.navigationController.navigationItemとself.navigationItemの相違点
5
A
答えて
5
UINavigationController
は、UIViewController
のサブクラスです。そのため、独自のnavigationItem
プロパティを持ち、UIViewController
から継承しました。このプロパティは、ナビゲーションコントローラを別のナビゲーションコントローラ内に埋め込む場合にのみ使用されるため、このプロパティは無視する必要があります。 UIViewController+UINavigationControllerItem
のドキュメントから
0
、以下を参照してください、私たちはビューコントローラに直接navigationItem
プロパティを使用する必要があります。それはUIViewController
から継承年代から
// Created on-demand so that a view controller may customize its navigation appearance.
@property(nonatomic,readonly,strong) UINavigationItem *navigationItem;
UINavigationController
もnavigationItem
性質を持っていますが、それは勝った設定しますビューコントローラのナビゲーションプロパティに影響しません。
簡単なテストから、我々はこれらのナビゲーション項目はどちらか等しくないことがわかります。
(lldb) po self.navigationItem
<UINavigationItem: 0x7f865c99ec50>
(lldb) expr -- @import UIKit
(lldb) po self.navigationController.navigationItem
<UINavigationItem: 0x7f865c811740>
関連する問題
- 1. IE標準、相違点および相違点の相違点
- 2. importとconstとの相違点とcommonjsでの相違点
- 3. =と:=の相違点
- 4. PHPUnitとPHPSpecの相違点と相違点
- 5. CBUUIDとNSUUIDの相違点
- 6. NSTimeZoneとGMTの相違点
- 7. ListViewとArrayListの相違点
- 8. pictureBox.Update()とpictureBox.Refresh()の相違点
- 9. ApplicationContextInitializerとBeanFactoryPostProcessorの相違点
- 10. システムとshell_execの相違点
- 11. AsyncSocketとAsyncUdpSocketの相違点
- 12. .textと.get_text()の相違点
- 13. plt.close()とplt.clf()の相違点
- 14. `BeginSubscribeToStreamingNotifications`と` SubscribeToStreamingNotifications`の相違点
- 15. Delegate.InvokeとDelegateの相違点
- 16. InternalResourceViewResolverとUrlBasedViewResolverの相違点
- 17. tf.nn.convolutionとtf.nn.conv2dの相違点
- 18. Backbone.Layout.extendとBackbone.view.extendの相違点
- 19. JavaとMacOSの相違点
- 20. Yocto:CORE_IMAGE_EXTRA_INSTALLとIMAGE_INSTALLの相違点
- 21. window.someRandomVarとsomeRandomVarの相違点
- 22. CDRとxDRの相違点
- 23. gst_bus_add_watch()とg_signal_connect()の相違点
- 24. EventStreamとEventBusの相違点
- 25. System.Threading.Tasks.DataflowとMicrosoft.Tpls.Dataflowの相違点
- 26. mkfifo()とmknod()の相違点
- 27. java.homeとJAVA_HOMEの相違点
- 28. $ httpParamSerializerJQLikeと$ httpParamSerializerの相違点
- 29. doAfterTerminateとdoFinallyの相違点
- 30. Boost.CoroutineとBoost.Coroutine2の相違点