我在 SwiftUI 表单中使用 DatePickers 获得了一些奇怪的动画行为。一张图片值一千字,所以我确定一个视频值一百万字:https ://imgur.com/a/UHXqXOh
我试图让日期选择器在表单中展开然后折叠,就像在 Calendar.app 中创建新事件时的行为一样
发生在我身上的是:
- Section中的任何扩展项目(除了最后一个)都会正常打开,但是当它关闭时,扩展的部分会向下滑动并淡出,而不是向上滑动和淡出。
- 该部分中的最后一项可以正确滑动,但根本不会褪色。它只是在过渡的开始/结束时出现然后消失
这些行为仅在表单某处存在非 DatePicker 元素(例如 Text、Slider)时才会发生(不必在该特定部分中)
这是我的内容视图:
struct ContentView: View {
@State var date = Date()
@State var isDateShown = false
var body: some View {
Form {
Section(header: Text("Title")) {
DatePicker("Test", selection:$date)
DatePicker("Test", selection:$date)
Text("Pick a date").onTapGesture {
withAnimation {
self.isDateShown.toggle()
}
}
if(isDateShown) {
DatePicker("", selection: $date).datePickerStyle(WheelDatePickerStyle()).labelsHidden()
}
}
Section(header: Text("hello")) {
Text("test")
}
}
}
}
乐于提供其他所需的东西