iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 18
0
Mobile Development

[初探] 用 SwiftUI - 打造一個自助洗衣應用系列 第 18

第十八日、SwiftUI - 關於 environment 簡單的闡述

environment 也是在之前uikit沒出現過的孩子之一
但是當然之前就有這孩子相關的所有功能

功能包含了滾動視圖配置視圖的方向性顏色模式...等

在這邊我們應用在了darkmode還有開頭的動畫上
都會用到這個孩子

SwiftUI 創建並啟動第一個視圖時候,SwiftUI會自動創建環境,我們不需要做任何事情。SwiftUI使用環境來傳遞系統範圍的設置。

環境

@Environment(\.colorScheme) var colorScheme: ColorScheme
if colorScheme == .dark { // Checks the wrapped value.
    DarkContent()
} else {
    LightContent()
}

像這裡的例子讀取當前視圖的配色方案
亮色模式暗色模式(darkmode)
並在讀取完後對不同的視圖去限制說你要怎麼樣的去呈現

傳遞值

你可以 在EnvironmentValues 結構文檔中找到傳遞值的完整列表


上一篇
第十七日、SwiftUI - 關於@State 與 @Binding
下一篇
第十九日、SwiftUI - Darkmode建立
系列文
[初探] 用 SwiftUI - 打造一個自助洗衣應用30

1 則留言

1
ytyubox
iT邦新手 5 級 ‧ 2020-09-18 13:11:36

感謝分享,補充相關的影片
Global Variable Oriented Programming – Reimplementing SwiftUI's environment for UIKit

謝謝你的補充/images/emoticon/emoticon41.gif

我要留言

立即登入留言