我正在嘗試從領導過渡。
.fullScreenCover(isPresented: $isLoginSuccess) {
HomeView()
}
它從底部使用默認過渡。無法更改過渡.transition(.move(edge: .leading))
uj5u.com熱心網友回復:
fullScreenCover在呈現時使用系統影片(如果我沒記錯的話,也是因為它在 UIKit 的引擎蓋下播放),而transition修飾符會影響視圖的外觀,例如,當您在視圖本身中使用iforswitch陳述句時。
在您的情況下,您可以將登錄視圖和主頁視圖包裝在同一個正文中,并使用 anif來顯示登錄或主頁。
struct Root: View {
@State var isLoginSuccess = false
var body: some View {
if isLoginSuccess {
HomeView()
.transition(.move(edge: .leading))
} else {
LoginView()
.transition(.move(edge: .trailing))
}
}
}
然后,在修改狀態時,記得換行withAnimation如下:
withAnimation {
isLoginSuccess = true
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/524515.html
標籤:IOS迅速迅捷
下一篇:如何快速實作螢屏鎖定?
