SwiftUI 如何避免在NavigationView中嵌套導(dǎo)航欄

本文價值與收獲

看完本文后,您將能夠作出下面的界面

Jietu20200502-204733@2x.jpg
Jietu20200502-204752.gif

基礎(chǔ)知識(高手可以略過,下面更精彩)

  • NavigationView
    NavigationView是SwiftUI中最常用的組件。NavigationView最簡單方法是先聲明它,然后再添加組件。
NavigationView { 
     NavigationLink("切換的詳細界面",destination: Text("這是個詳細界面")) 
    .navigationBarTitle("界面切換")
}

這段代碼將顯示一個帶有文本的按鈕,點擊該按鈕后新yem。如果我們將其包裝在navigationView中,那么它還會顯示后退按鈕以返回到主屏幕。

  • NavigationLink
    在前面的代碼中,我們還看到另一個與導(dǎo)航相關(guān)的項稱為NavigationLink。他的作用和HTML中A標記功能類似。點擊后將切換到新的界面。

  • NavigationBarItems
    導(dǎo)航視圖包括標題欄,它可以在左側(cè)和右側(cè)有按鈕??梢允褂脤?dǎo)航視圖元素的 .navigationBarItems 修改器添加這些按鈕。它非常容易使用,左右兩個按鈕在 SwiftUI 中稱為前導(dǎo)視圖和尾隨視圖。由于前導(dǎo)和尾隨是視圖,因此可以是任何視圖,文本、圖像或按鈕;但是,在界面中具有按鈕最有意義,以便它是交互式的,并且在點擊時可以提供一些活動,例如更改為編輯模式、提供一組選項等:

NavigationView {
    List { Text("Hello World")} .navigationBarItems(trailing:
    Button("Click me") { //
    }) .navigationBarTitle(Text("Settings"))
}

這樣提供的布局具有在右上角的按鈕,帶有文本設(shè)置的大標題欄以及帶有單個項目Hello World的表格視圖。之前,我們了解了如何使用按鈕。可以應(yīng)用相同的方法來為該按鈕提供功能。

解決方案

還有 47% 的精彩內(nèi)容
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
支付 ¥1.59 繼續(xù)閱讀

友情鏈接更多精彩內(nèi)容