我正在使用SwiftUI 2版本进行应用程序开发。 我在SwiftUI中使用的textfield遇到了问题。 我不想再使用UITextField了,我想限制TextField中字符的数量。 我搜索了很多,找到了一些相关的答案,但这些答案对于SwiftUI 2版本不起作用。
class textBindingManager: ObservableObject{
let characterLimit: Int
@Published var phoneNumber = "" {
didSet {
if phoneNumber.count > characterLimit && oldValue.count <= characterLimit {
phoneNumber = oldValue
}
}
}
init(limit: Int = 10) {
characterLimit = limit
}
}
struct ContentView: View {
@ObservedObject var textBindingManager = TextBindingManager(limit: 5)
var body: some View {
TextField("Placeholder", text: $textBindingManager.phoneNumber)
}
}