Sencha touch 无法刷新sencha touch中的面板

Sencha touch 无法刷新sencha touch中的面板,sencha-touch,updatepanel,extjs,panel,Sencha Touch,Updatepanel,Extjs,Panel,我是新来的森查触摸 对于我的移动网站,我面临的问题是UI元素的呈现相互重叠,当我刷新或拉伸窗口时,UI元素的呈现会按需要显示 因此,我尝试使用doLayout刷新面板,但无法做到这一点。可能是我没有在正确的位置使用doLayout() 这是我的密码 var app=new Ext.Application({ name:'entwoven', useLoadMask:true, launch:function() { Ext.setup({tabletSt

我是新来的森查触摸

对于我的移动网站,我面临的问题是UI元素的呈现相互重叠,当我刷新或拉伸窗口时,UI元素的呈现会按需要显示

因此,我尝试使用doLayout刷新面板,但无法做到这一点。可能是我没有在正确的位置使用doLayout()

这是我的密码

var app=new Ext.Application({
    name:'entwoven',
    useLoadMask:true,
    launch:function()
    {

    Ext.setup({tabletStartupScreen:'tablet_startup.png',
        icon:'icon.png',
        glossOnIcon:true,
        onReady:function(){


     var loginScreen = Ext.getCmp('loginPanel').items.items[0];
     loginScreen.doLayout();



    entwoven.views.loginToolbar = new Ext.Toolbar({
    id:'loginToolbar',
    title: 'Login',
    dock :'top'
    });

    entwoven.views.imgPanel = new Ext.Panel({
        id: 'imgPanel',
        html : '<div class="volkwagen"><center></center></div>'

    });

    entwoven.views.formPanel = new Ext.form.FormPanel({
        id : 'formPanel',
        items: [{

            xtype : 'textfield',
            id: 'userId',
            name: 'name',
            placeHolder: 'UserId'
        },
        {
            xtype: 'passwordfield',
            id: 'passwordfield',
            name : 'password',
            placeHolder: 'Password'
        }

    ]
    });

    entwoven.views.storebtnPanel = new Ext.Panel({
        id: 'storebtnPanel',
        layout: 'hbox',
        items :[{
            xtype : 'button',
            cls : 'storebtnAction',
            activeCls : 'activeStore',
            id: 'storebtn'
            },{html : 'Store',
                id: 'storetext'}]
    });

    entwoven.views.btnPanel = new Ext.Panel({
        id: 'btnPanel',
        items:[{
            xtype : 'button',
            cls : 'btnAction',
            id: 'loginbtn',
            activeCls : 'activeLogin',
            name: 'loginButton',


        }]
    });


    entwoven.views.loginPanel = new Ext.Panel({
        id:'loginPanel',
        fullscreen:true,
        cls: 'panelBackground',
        dockedItems: entwoven.views.loginToolbar,
        items : [entwoven.views.imgPanel,entwoven.views.formPanel,entwoven.views.storebtnPanel,entwoven.views.btnPanel]

        });

entwoven.views.viewport = new Ext.Panel({
    layout: 'card',
    fullscreen: 'true',
    cardAnimation: 'slide',
    cls: 'com', 
         items: [entwoven.views.loginPanel]
    });
}
});


}
});
var-app=新的外部应用程序({
名称:'entwoven',
useLoadMask:对,
启动:函数()
{
Ext.setup({tabletStartupScreen:'tablet_startup.png',
图标:'icon.png',
格洛松尼康:没错,
onReady:function(){
var loginScreen=Ext.getCmp('loginPanel').items.items[0];
loginScreen.doLayout();
entwoven.views.loginToolbar=新的外部工具栏({
id:“登录工具栏”,
标题:“登录”,
码头:'顶部'
});
entwoven.views.imgPanel=新的外部面板({
id:“imgPanel”,
html:'
});
entwoven.views.formPanel=新的Ext.form.formPanel({
id:“formPanel”,
项目:[{
xtype:'textfield',
id:'用户id',
姓名:'姓名',
占位符:“用户ID”
},
{
xtype:'密码字段',
id:'密码字段',
名称:“密码”,
占位符:“密码”
}
]
});
entwoven.views.storebtnPanel=新的外部面板({
id:'storebtnPanel',
布局:“hbox”,
项目:[{
xtype:'按钮',
cls:“storebtnAction”,
activeCls:“activeStore”,
id:'storebtn'
},{html:'Store',
id:'storetext'}]
});
entwoven.views.btnPanel=新的外部面板({
id:'btnPanel',
项目:[{
xtype:'按钮',
cls:“btnAction”,
id:'loginbtn',
activeCls:'activeLogin',
名称:“登录按钮”,
}]
});
entwoven.views.loginPanel=新的外部面板({
id:'loginPanel',
全屏:对,
cls:“panelBackground”,
dockedItems:entwoven.views.loginToolbar,
条目:[entwoven.views.imgPanel,entwoven.views.formPanel,entwoven.views.storebtnPanel,entwoven.views.btnPanel]
});
entwoven.views.viewport=新的外部面板({
布局:“卡片”,
全屏:“正确”,
cardAnimation:“幻灯片”,
cls:“com”,
条目:[entwoven.views.loginPanel]
});
}
});
}
});
在控制台上,我得到一个错误,即
“uncaughttypeerror:无法读取未定义的属性'items'”

请帮助我如何刷新或“更新”上面的面板,以便我能够正确呈现UI元素


谢谢,

首先,您需要将此代码移至onReady事件的底部:

 var loginScreen = Ext.getCmp('loginPanel').items.items[0];
 loginScreen.doLayout();
原因是,您尚未定义loginPanel组件,因此对它的引用将为空。将其移动到底部,或者更具体地说,在loginPanel定义之后,将解决items undefined错误

请更明确地说明UI呈现问题:

  • 你的目标是什么
  • 哪些组件渲染不正确