I have a bunch of textfield that only accept numbers. But how can I force the user to only input one single digit and not multiple. I want the input to be a number between 0 and 9.
Any ideas?
This is the setup for one of the textfields:
CocoaTextField(pin1default, text: $pin1)
.isFirstResponder(currentFocus == 0)
.font(.system(size: 18, weight: .bold))
.lineLimit(1)
.frame(maxWidth: 50, maxHeight: 50, alignment: .center)
.multilineTextAlignment(.center)
.overlay(
RoundedRectangle(cornerRadius: 6)
.strokeBorder(Color.gray.opacity(0.1), lineWidth: 2, antialiased: true)
)
.keyboardType(.numberPad)
.onChange(of: pin1, perform: { value in
if value.count > 0 {
currentFocus += 1
}
})
.onTapGesture {
currentFocus = 0
pin1default = ""
}