Sencha触摸面板内部面板未显示

时间:2011-10-14 23:14:26

标签: sencha-touch panel tabbar

我在面板中有一个面板作为项目,以及其他停靠的项目。 出于某种原因,它没有出现。 这些是要添加到主面板的内容:

    MarketMakerApp.views.businessInfo = new Ext.Panel({
        id: 'businessInfo',
        layout: 'fit',
        html: '<br /><br /><br /><div>{ id } </div>' + '<div>{ title }</div>'
        //html: 'This is the business info view'
    });

     MarketMakerApp.views.businessTabbar = new Ext.TabBar({
        dock: 'bottom',
        ui: 'dark',
        items: [
            {
                text: '1',
                iconCls: 'info',
                hander: function() {
                    MarketMakerApp.views.viewport.setActiveItem('businessInfo', {type: 'slide', direction: 'left' });
                }
            },
            {
                text: '2',
                iconCls: 'star',
                hander: function() {
                    this.add( MarketMakerApp.views.businessInfo);
                    this.setActiveItem(2);
                }
            },
            {
                text: '3',
                iconCls: 'map',
                hander: function() {
                }
            }
        ]
    });

主要小组是:

    MarketMakerApp.views.businessContainer = new Ext.Panel({
        id: 'businessContainer',
        layout: 'fit',
        dockedItems: [
            MarketMakerApp.views.businessTypeListToolbar,
            MarketMakerApp.views.businessTabbar
        ],
        items: [ MarketMakerApp.views.businessInfo]
    });

标签栏和工具栏显示正常,但我看不到businessInfo面板。 任何建议将不胜感激。

P.S。我与Tabpanel争吵的时间太长,不能放弃,现在只使用tabbar。

1 个答案:

答案 0 :(得分:0)

我没有成功地以编程方式创建Panel(或任何你的视图)。这里有一些代码可以使用这种方法。

将initComponent函数添加到businessContainer,如下所示,而不是在businessContainer面板上设置项目:

initComponent: function(){
    Ext.apply(this, {
        items: [
            MarketMakerApp.views.businessInfo
        ]
    });
    MarketMakerApp.views.businessContainer.superclass.initComponent.apply(this, arguments);
}