小编Jam*_*248的帖子

SwiftUI:为什么切换文本字段焦点时键盘会“跳跃”?

我尝试过使用两个文本字段的简单视图。当提交第一个时,我想把重点放在第二个上。这是我的代码。

enum ContentViewFocus {
    case field1
    case field2
}

struct ContentView: View {
    @State private var field1Text = ""
    @State private var field2Text = ""
    @FocusState private var fieldFocus: ContentViewFocus?
    
    var body: some View {
        VStack(spacing: 24.0) {
            TextField("field 1", text: $field1Text)
                .focused($fieldFocus, equals: .field1)
                .onSubmit {
                    fieldFocus = .field2
                }
            TextField("field 2", text: $field2Text)
                .focused($fieldFocus, equals: .field2)
                .onSubmit {
                    fieldFocus = nil
                }
            Spacer()
        }
        .padding(24.0)
        .onAppear {
            DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) {
                fieldFocus = .field1
            }
        }
    } …
Run Code Online (Sandbox Code Playgroud)

keyboard textfield swiftui

5
推荐指数
0
解决办法
437
查看次数

标签 统计

keyboard ×1

swiftui ×1

textfield ×1