SwiftUI ZIndex动画未出现
我有以下代码:SwiftUI ZIndex动画未出现,swiftui,Swiftui,我有以下代码: @State private var couponId: Int = 0 var body: some View { ScrollView { VStack(spacing: -50) { ForEach(1...20, id: \.self) { index in Cou
@State private var couponId: Int = 0
var body: some View {
ScrollView {
VStack(spacing: -50) {
ForEach(1...20, id: \.self) { index in
CouponCell()
.zIndex(couponId == index ? 2 : 0)
.animation(.spring())
.onTapGesture {
withAnimation {
couponId = index
}
}
}
}
.padding().frame(maxWidth: .infinity, maxHeight: .infinity)
用户选择一个特定的CouponCell,然后我更新Zindex,使其显示在其他单元格的顶部。这是可行的,但根本没有动画。我错过了什么,为什么动画没有发生
我在macOS Big Sur Beta 2上使用的是Xcode 12 Beta 2,
.zIndex
本身不是可设置动画的修改器,因为实际上在视图z位置没有可设置动画的内容-它在下方或上方
可能你的意思是(或更喜欢)下面这样的组合
在复制代码(Xcode 12)上测试
.zIndex
本身不是可设置动画的修改器,因为实际上在视图z位置中没有要设置动画的内容-它位于下方或上方
可能你的意思是(或更喜欢)下面这样的组合
在复制代码(Xcode 12)上测试
CouponCell()
.zIndex(couponId == index ? 2 : 0)
.scaleEffect(couponId == index ? 1.02 : 1)
.animation(.spring(), value: couponId)
.onTapGesture {
couponId = index
}