I am trying to use a TextField
that receives only numbers in QML
. I am using the inputMethodHints
property to make the device keyboard show just numbers. It works fine in Android but when I run it in iOS it shows the full keyboard, with digits, characters and predictive words.
Code below:
TextField {
id: numeroTelefoneTextField
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
width: parent.width * 0.70
height: parent.height * 0.6
placeholderText: qsTr("Seu número")
font.bold: true
validator: RegExpValidator{regExp: /\d+/}
inputMethodHints: Qt.ImhDigitsOnly
}
I have tried other options to like inputMethodHints: Qt.ImhDigitsOnly | Qt.ImhNoPredictiveText
and just inputMethodHints: Qt.ImhNoPredictiveText
but none of this options worked in iOS.
I solved that just removing the validators, but I don't know why it worked without the validator.
Code below:
TextField {
id: numeroTelefoneTextField
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
width: parent.width * 0.70
height: parent.height * 0.6
placeholderText: qsTr("Seu número")
font.bold: true
inputMethodHints: Qt.ImhDigitsOnly
}
Try following:
TextField {
id: numeroTelefoneTextField
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
width: parent.width * 0.70
height: parent.height * 0.6
placeholderText: qsTr("Seu número")
validator: IntValidator {
bottom: 1
top: 100
}
font.bold: true
inputMethodHints: Qt.ImhDigitsOnly
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With