【发布时间】:2021-10-27 06:09:58
【问题描述】:
我正在开发一个 SwiftUI 应用程序。在应用程序中,我有一个用作表单的自定义编码列表。它是自定义编码的原因是因为我使用的是自定义颜色。在充当导航链接的其他行中,我有 TextField 行。我的问题是,当我添加 onTapGesture 以关闭键盘时,所有其他行功能都停止工作。例如 NavigationLinks。
NavigationLink 在这里工作
ZStack(alignment: .leading, content: {
Color.pacificBlue
.edgesIgnoringSafeArea(.all)
List {
Section(header: Text("Header") {
NavigationLink(
destination: SecondaryView(),
label: {
Text("Secondary View")
})
TextField("MyField", text: self.$myField)
}
}
}
NavigationLink 在这里不起作用
ZStack(alignment: .leading, content: {
Color.pacificBlue
.edgesIgnoringSafeArea(.all)
List {
Section(header: Text("Header") {
NavigationLink(
destination: SecondaryView(),
label: {
Text("Secondary View")
})
TextField("MyField", text: self.$myField)
}
}
}
.onTapGesture {
self.dismissKeyboard()
}
关闭键盘
extension View {
func dismissKeyboard() {
let resign = #selector(UIResponder.resignFirstResponder)
UIApplication.shared.sendAction(resign, to: nil, from: nil, for: nil)
}
}
有没有办法解决这个问题,而不必移动到辅助视图来添加文本。任何帮助将不胜感激。
【问题讨论】:
标签: swiftui