SwiftUI 中如何防止键盘推高视图?

jaz*_*z01 9 ios swift swiftui

我是 SwiftUI 编程新手,我已经创建了一个视图,但是一旦用户点击文本字段,键盘就会出现,整个视图就会向上推,我该如何解决这个问题?

Mak*_*zyk 27

我相信你可以使用.ignoresSafeArea(.keyboard)

我在 XCode 12.4 和模拟器 iOS 14.4 中测试了这段代码

struct ContentView: View {
  var body: some View {
      VStack {
        Spacer()
        Group {
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
        }
        HStack{
          Spacer()
          TextField("INPUT", text: .constant("HERE IS INPUT"))
          Spacer()
        }
        Group {
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
          Text("Content")
        }
        Spacer()
      }
      .ignoresSafeArea(.keyboard)
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 但我厌倦了,这对我不起作用。@Maksymilian Tomczyk (2认同)