5

私は UINavigationBar のカスタム サブクラスを my UINavigationControllerby using: で使用していますinitWithNavigationBarClass:toolbarClass:

言うまでもなく、このサブクラスでは、表示されたナビゲーション アイテムのタイトルが変更されたときに、ナビゲーション バー サブクラスに含まれる追加のインターフェイス要素を監視および更新する必要があります。これにKVOを使用し、ナビゲーション項目のtitleプロパティを観察し、それが変更されたときに更新することを検討しましたが、もっと良い方法があるのではないかと思っていました. サブクラス化UINavigationControllerにより、この機能を制御または監視する余裕が得られるでしょうか? これについてあなたの考えを聞きたいのですが、これについてもっと良い方法があるかどうか?


詳しく説明すると、たとえば、いくつかのメソッドをオーバーライドしていますlayoutSubviews。このメソッドでは、ナビゲーション項目がスタックにプッシュされたばかりで、まだタイトルがありません。これは、viewDidLoadまだ起こっていないビューがロードされるまで実行されないビュー コントローラにタイトルが設定されているためです。そのため、ナビゲーション項目がプッシュされたとしてもnil、表示された View Controller で変更されるまで、タイトルはそのままですviewDidLoad。これは、ナビゲーション スタックにプッシュされたにナビゲーション アイテムが変更されたときに通知を受けたいものです。

4

0 に答える 0