SwiftUI:对表单中的单元格进行动画处理

时间:2019-08-01 10:52:48

标签: swift forms animation swiftui

我正在为Form或其中的单元设置动画。我的问题是,以下代码为我提供了一个不错的插入动画,但是对于移除,该单元在看起来很丑的延迟后突然被移除。

import SwiftUI

struct ContentView: View {
    @State var toggledValue = false
    @State var pickedValue = 0

    var body: some View {
        NavigationView {
            Form {
                Section {
                    Toggle(isOn: $toggledValue) {
                        Text("Toggled Value")
                    }

                    if toggledValue {
                        Picker(selection: $pickedValue, label: Text("Picked Value")) {
                            ForEach((0...5).identified(by: \.self)) {
                                Text("Pick Value \($0)").tag($0)
                            }
                        }
                    }
                }
                Section {
                    Text("Some Text")
                }
            }
            .navigationBarTitle("Navigation Bar Title")
        }
    }
}

到目前为止,我一直尝试将Toggle包裹在withAnimation闭包中,但这不会改变任何内容。让我感到奇怪的是,使用List而不是Form的相同代码为我提供了预期的动画。那是一个错误还是我在监督什么?

0 个答案:

没有答案