私はその難しい方法を見つけました
navigationController.navigationBarHidden = NO;
と
navigationController.navigationBar.hidden = NO;
同じものではありません。実際、最初の構文を使用してナビゲーションバーを非表示にした場合、2番目の構文を使用して表示することはできません。単に何も実行されません。さらに、ナビゲーションバーを表示/非表示にする最初の構文は常に機能しますが、2番目の構文は時々機能しますが、常に機能するとは限りません。いつ機能するのか、いつ機能しないのかを正確に判断することはできませんでした。
他の人のコード(かなり大きなアプリ:20を超えるUIViewControllers)の修正に悩まされていたため、グローバル検索を実行して、navigationBar.hidden
それをに置き換える必要がありましたnavigationBarHidden
。その後、グローバル検索を実行して構文navigationBar setHidden:
に置き換える必要がありました。navigationBarHidden
これにより、最終的に問題が修正されました。
それでも、2つの異なるオプションが提供される理由と、それらの実際の違いは何かを理解したいと思います。