我的数据模型属性在我的表视图控制器中声明,并且 SwiftUI 视图以模态呈现。我想要提供的Form输入来操作数据模型。我在数据流中找到的资源只是在 SwiftUI 视图之间,而我在 UIKit 集成中找到的资源是在 SwiftUI 中嵌入 UIKit 而不是相反。
此外,对于值类型(在我的情况下是结构)数据模型是否有一种很好的方法,或者是否值得将其重新建模为一个类以便它是一个引用类型?
这严格适用于 SwiftUI。
当用户点击键盘上的“返回”键时,我想让键盘移动到下一个可用的文本字段。
我有以下观点:
var body: some View {
VStack {
NavigationView {
Form {
TextField("First name", text: $model.firstname)
.tag(1)
TextField("Last name", text: $model.lastname)
.tag(2)
}
.navigationBarTitle("Add a Person", displayMode: .inline)
}
}
}
Run Code Online (Sandbox Code Playgroud)
以及应该允许选项卡的以下代码:
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
let nextTag = textField.tag + 1
if let nextResponder = textField.superview?.viewWithTag(nextTag) {
nextResponder.becomeFirstResponder()
} else {
textField.resignFirstResponder()
}
return true
}
Run Code Online (Sandbox Code Playgroud)
我只是不确定如何在 SwiftUI 中实现它?
我如何将它分配给文本字段的委托?!
****更新****
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
print("Current Tag: ", textField.tag) // …Run Code Online (Sandbox Code Playgroud)