Javascript 如何通过设备Android&;更改Xtype属性;网间网操作系统?

Javascript 如何通过设备Android&;更改Xtype属性;网间网操作系统?,javascript,android,ios,extjs,sencha-touch,Javascript,Android,Ios,Extjs,Sencha Touch,我正在使用Extjs6.0.2来创建项目,但是现在我在创建xtype时遇到了问题:“namefield”因为这种类型的xtype在Android上支持,而不支持iOS设备,但是我希望我能找到解决方案,我如何使用它来创建xtype lookupReference('txtPhoneNo').setConfig('xtype','numbercode')此代码在main.js中替换 { xtype:'fieldset', items:[{

我正在使用Extjs6.0.2来创建项目,但是现在我在创建xtype时遇到了问题:“namefield”因为这种类型的xtype在Android上支持,而不支持iOS设备,但是我希望我能找到解决方案,我如何使用它来创建xtype

lookupReference('txtPhoneNo').setConfig('xtype','numbercode')
此代码在
main.js中替换

{

            xtype:'fieldset',
            items:[{

                minLength: 9,
                maxLength: 10, 
                xtype: 'textcode',
                cls: 'acledaTxt',
                itemId: 'txtPhoneNo',
                id: 'phonNo' ,
                reference: 'txtPhoneNo',

            }]

        },

无法更改组件xtype运行时

相反,您可以创建这两个组件,并使用隐藏或显示正确的组件

if (Ext.os.is.iOS) {
    // iPad, iPod, iPhone, etc.
}
或者,您可以像下面这样创建组件:

var xtype='';
if (Ext.os.is.iOS) {
    xtype='IOSXTYPE'
}else if(Ext.os.is.Android){
    xtype='AndroidXTYPE'
}
var component= Ext.create({
    xtype:xtype
});

无法更改组件xtype运行时

相反,您可以创建这两个组件,并使用隐藏或显示正确的组件

if (Ext.os.is.iOS) {
    // iPad, iPod, iPhone, etc.
}
或者,您可以像下面这样创建组件:

var xtype='';
if (Ext.os.is.iOS) {
    xtype='IOSXTYPE'
}else if(Ext.os.is.Android){
    xtype='AndroidXTYPE'
}
var component= Ext.create({
    xtype:xtype
});

安卓设备如何看sencha文档,这里是Ext.os.is方法最好的感谢答案,但我仍然有安卓的问题,我想使用数字键和输入数字,但我做不到,因为安卓设备中的键盘仍然显示文本键盘,可以将文本输入文本字段,云u有任何帮助解决方案,我真的很想在Android设备中显示键盘号码,如果我使用xtype:“numberfield”,还有一件事我怎么能在第一个号码中输入0(例如:010423384)?我应该在第一个数字上加什么零呢?比如me=this,input=me.getComponent().element.down('input');set({pattern:'[0-9]*'});me.callParent(参数);我尝试应用代码var me=this,input=me.getComponent().element.down('input');set({pattern:'[0-9]*'});me.callParent(参数);在安卓设备中,但仍然存在问题键盘和文本,但我的问题只是数字,安卓设备如何查看sencha文档,这是Ext.os.is方法,非常感谢您的回答,但我仍然存在安卓问题,我想使用数字键和输入数字,但我无法做到,因为android设备中的键盘仍然显示文本键盘,可以将文本输入到文本字段中,cloud u有任何帮助解决方案,我真的很想在android设备中显示键盘号,如果我使用xtype:'numberfield',我如何在第一个数字中输入0(例如:010423384)?我应该在第一个数字上加什么零呢?比如me=this,input=me.getComponent().element.down('input');set({pattern:'[0-9]*'});me.callParent(参数);我尝试应用代码var me=this,input=me.getComponent().element.down('input');set({pattern:'[0-9]*'});me.callParent(参数);在安卓设备中,但仍然有问题Keyboard仍然有文本,但我的问题只是数字,