Ну, я нашел проблему с NumberField на sencha. Формат NumberField и SpinnerField не работает на мобильном телефоне , потому что, когда мобильная сенча устанавливает ввод с типом номера, в то время как Chrome и Cordova Engine не работают с поддержкой запятой.
Так что если вам нужно отобразить цифровую клавиатуру на движке Cordova или вам нужна поддержка чисел для мобильного устройства, вы должны переопределить класс, указать некоторые переменные, я привожу здесь пример и, возможно, @Leandro Fantinel может сделать скрипку.
Ext.util.Format.thousandSeparator = '.';
Ext.util.Format.decimalSeparator = ',';
Ext.define('jsclient.view.articleCheck.decimalNumber.DecimalEuropeNumber11122', {
extend: 'Ext.field.Number',
alias: 'widget.decimalNumber',
requires: [
'Ext.field.Number'
],
inputType: 'text',
decimals: 2,
listeners: {
initialize: function (_this, eOpts) {
//This attribute make that cordova display a numeric number
_this.element.dom.querySelector("input").setAttribute("inputmode", "numeric");
},
change: function (_this, eOpts, value, oldValue) {
var objRegExp = /^\d+\.\d{0,2}$/;
if (objRegExp.test(oldValue) && !objRegExp.test(value)) {
_this.setValue(oldValue);
}
},
}
});