日學(xué)一語(yǔ),日行一善
Modal模態(tài)框在ios開(kāi)發(fā)中的使用非常頻繁,所以我們必須要掌握,今天我們就來(lái)看下TA的常規(guī)用法!
一、代碼展示
import SwiftUI
struct ModalView: View {
@State var isModalView = false
var body: some View {
VStack{
Text("點(diǎn)擊跳出ModalView窗口")
.onTapGesture {
self.isModalView.toggle()
}
.sheet(isPresented: $isModalView) {
Text("新窗口")
}
}
}
}
struct ModalView_Previews: PreviewProvider {
static var previews: some View {
ModalView()
}
}
二、代碼解析
但凡用到Modal窗口,第一時(shí)間就要想到兩個(gè)問(wèn)題,一個(gè)是需要一個(gè)Bool變量,用來(lái)判斷Modal窗口的狀態(tài)(但前是打開(kāi)的還是關(guān)閉的),二是需要一個(gè)開(kāi)關(guān)來(lái)控制Bool變量的值,開(kāi)關(guān)的可以用button的action或onTapGesture點(diǎn)擊命令來(lái)控制,本篇用的就是onTapGesture命令;
self.isModalView.toggle() // 當(dāng)點(diǎn)擊Text時(shí),isModalView開(kāi)關(guān)切換
.sheet(isPresented: $isModalView) {
Text("新窗口") //這里可以是任何view
} //固定用法,記住就行
三、舉一反三
嘗試把把示例中的 Text 換成復(fù)雜點(diǎn)的 View 試試看這個(gè)功能可以做出什么效果?
你答應(yīng)過(guò)我,我用心寫(xiě),你用心看;既會(huì) 點(diǎn)贊,還會(huì) 收藏,偶爾還會(huì) 分享 和 打賞!
本篇完,感謝閱讀!