[SwiftUI] SwiftUIのNavigationViewでNavigationBarが消えない問題

SwiftUI

SwiftUIのNavigationViewで、NavigationBarが消えなくてハマりましたのでメモ

.navigationBarHidden(true)だけではだめ

上記の通り、.navigationBarHidden(true)としても、タイトルバーは表示されてしまいます。

タイトルは表示されてしまう(1)

.navigationBarTitle(“”)が必要

タイトルの文字列を明示的に””にセットしないといけないみたいです。

タイトル文字列を空文字にセット

.navigationBarTitle(“”) だけでもダメ

ただし、.navigationBarTitle(“”) だけでは、ダメです。

上記の.navigationBarHidden(true) とセットで使う必要があります。

まとめ:NavigationBarを非表示にするコード

以下の2つの設定が必要です。

コード

なので、例えば、以下のようなコードでタイトルバーのないビューを表示できます。

コード

なお、上記で表示させると、いったんタイトルバーのありそうな表示を行った後、調整されます。

注意
上記は、XCode11.4での動作ですので、振る舞いに調整が入るかもしれません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です