iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
Mobile Development

麻瓜學習 iOS 開發系列 第 15

Day15:SwiftUI—TabView

前言

前面兩篇介紹了 List、ForEach、ScrollView、Navigation,
這篇文章繼續介紹 SwiftUI 的內容,
今天來研究 TabView。

實作

  • 打開一個新的專案:

    刪除 .padding() 把 text 放入 TabView 裡面:


    會發現 preview 下方欄位出現了一個標籤欄,
    現在標籤欄沒有內容。
    然後我們使用 tabItem 填入內容並更改 text:


    這是我們的第一個 TabView,
    再來宣告第二個:



    通過 TabView 實現多個選項卡界面很簡單,
    接下來討論下更多功能。
  • 追蹤當前的選項卡
    宣告一個變數來追蹤當前選擇的選項卡:
@State var tabIndex = 0

並在 TabView 中傳入變數 tabIndex 跟蹤狀態:

當變數 tabIndex 更改時,
引用該變數的 view code 都會檢測到更改然後自動更新 UI。
在 TabView 中,使用者可以通過切換兩個選項界面進行交互產生數據,
所以帶入 TabView 中的參數 tabIndex 更改時,

@State var tabIndex = 0

也應該隨之更改。
所以這是一種雙向的綁定關係,
我们通过在帶入 TabView 中的參數 tabIndex 前添加 $ 完成綁定,
並且在不同 tabview 上添加 tag() 來區分:

打開 simulator:

打開專案,默認進入 tab1。


上一篇
Day14:SwiftUI—ForEach、ScrollView
下一篇
Day16:SwiftUI—GeometryReader
系列文
麻瓜學習 iOS 開發30

尚未有邦友留言

立即登入留言