在Sencha Touch 2.2中无法渲染卡布局面板

时间:2013-04-19 04:43:56

标签: javascript cordova extjs sencha-touch sencha-touch-2

我使用sencha touch 2.0开发了一个应用程序,现在我将应用程序升级到sencha touch 2.2。 它不起作用。 我有一个容器(layout = card),如下所示:

Ext.define("InfoImage.view.viewWorkitem.ViewWorkitemView", {
extend:'Ext.Container',
requires:[
    'Ext.TitleBar',
    'Ext.List'
],
xtype:'workitems',
layout:'card',
cardSwitchAnimation:'slide',
config:{
    fullscreen:true,
    cls:'hboxpanel',
    items:[

       {
            xtype:'workItemPanel',
            flex:3
       } 
    ]
} });

workItemPanel如下:

Ext.define("InfoImage.view.viewWorkitem.WorkitemPanel", {
extend:'Ext.navigation.View',
requires:[
    'Ext.TitleBar',
    'Ext.List'
],
xtype:'workItemPanel',
id:'workItemId',
config:{


    layout : 'card',
    style:'border-radius: 10px;',
    navigationBar:{
        hidden:'true'
    },

    items:[ ]
}  });

这在sencha tocuh 2.0中工作正常,它不在2.2中 抛出错误未捕获TypeError:对象卡没有方法'onItemAdd'

要使用sencha touch 2.2进行哪些更改才能正常工作?

1 个答案:

答案 0 :(得分:1)

您需要将layout:'card'cardSwitchAnimation:'slide'等配置放在config块中:

config:{
    layout:'card',
    cardSwitchAnimation:'slide',
    fullscreen:true,
    cls:'hboxpanel',
    items:[

       {
            xtype:'workItemPanel',
            flex:3
       } 
    ]
}

第二个视图中id:'workItemId'的相同方式:

config:{
    id:'workItemId',
    layout : 'card',
    style:'border-radius: 10px;',
    navigationBar:{
         hidden:'true'
    },

    items:[ ]
}