【Swift UI】NavigationLinkのアクセサリー(>)を非表示にする方法!

【Swift UI】NavigationLinkのアクセサリー(>)を非表示にする方法!

この記事からわかること

  • SwiftUINavigationLinkアクセサリー非表示にする方法

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

環境

NavigationLinkのアクセサリー(>)

【Swift UI】NavigationLinkのアクセサリー(>)を非表示にする方法!

Swift UIのList内にNavigationLinkを設置すると画面が遷移することを表すためにアクセサリー(>)が自動的に表示されてしまいます。これを非表示にする方法は公式では用意されていないのでカスタマイズすることで無理やり非表示にする方法を紹介します。

NavigationStack {
    List {
        Text("USA🇺🇸")
        Text("Canada🇨🇦")
        NavigationLink {
            Text("日本")
        } label: {
            Text("Japan🇯🇵")
        }
    }
}

アクセサリーを非表示にする方法

アクセサリーを非表示にする方法ZStackopacityを掛け合わせる方法です。これによりNavigationLinkの遷移機能は保持したままにViewからアクセサリー(>)をなくすことが可能です。

【Swift UI】NavigationLinkのアクセサリー(>)を非表示にする方法!
NavigationStack {
    List {
        Text("USA🇺🇸")
        Text("Canada🇨🇦")
        ZStack {
            NavigationLink {
                Text("日本")
            } label: {
                // > アクセサリを非表示にするためZStack + opacity
            }.opacity(0)
                .frame(width: 0, height: 0)
            Text("Japan🇯🇵")
        }
    }
}

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index