ナビゲーションバーの背景色・文字色を変更する

SwiftUI では toolbarBackground を使用してナビゲーションバーの背景色をカスタマイズすることができますが、この API は iOS 16+ からしか利用できず、かつ文字色を自由に変更する API は iOS 17 時点でも提供されていません。

この記事では SwiftUI-Introspect を利用して、裏にある UINavigationController にアクセスし、ナビゲーションバーの背景色・文字色を変更する方法について紹介します。