0

是否可以链接到 tab.Panel 视图并选择第二个或第三个(不是第一个)tabItem?

目前我有一个链接到 tab.Panel 的视图,如下所示:

Ext.define("app.view.MyView", {
    extend: 'Ext.tab.Panel',
    xtype: 'myview',
    alias: 'widget.myview',
    requires: [
        'Ext.TitleBar',
        'dev.view.1',
        'dev.view.2',
        'dev.view.3',
        'dev.view.4',
        'dev.view.5',
    ],
    config: {
        tabBarPosition: 'bottom',
        title: 'My Title',
        ui: 'neutral',

        items: [
            {
                xtype: 'xtype-of-view-1'
            },
            {
                xtype: 'xtype-of-view-2'
            },
            {
                xtype: 'xtype-of-view-3'
            },
            {
                xtype: 'xtype-of-view-4'
            },
            {
                xtype: 'xtype-of-view-5'
            }
        ]
    }
});

截至目前,当我在视图中加载时,“xtype-of-view-1”被设置为活动选项卡。但是是否可以在 tab.Panel 视图中加载但同时激活并按下其他选项卡之一?

4

2 回答 2

1
Ext.define("app.view.MyView", {
    extend: 'Ext.tab.Panel',
    xtype: 'myview',
    alias: 'widget.myview',
    requires: [
        'Ext.TitleBar',
        'dev.view.1',
        'dev.view.2',
        'dev.view.3',
        'dev.view.4',
        'dev.view.5',
    ],

    config: {
        tabBarPosition: 'bottom',
        title: 'My Title',
        ui: 'neutral',

        items: [
            {
                xtype: 'xtype-of-view-1'
            },
            {
                xtype: 'xtype-of-view-2'
            },
            {
                xtype: 'xtype-of-view-3'
            },
            {
                xtype: 'xtype-of-view-4'
            },
            {
                xtype: 'xtype-of-view-5'
            }
        ]
    },
    initialize: function() {
         var items = this.getItems(),
             itemIdx,
             Ext.each(items, function(item, idx) {
                 if (item.xtype == 'xtype-of-view-2') {
                     itemIdx = idx;
                     return false;
                 }
             });
             this.setActiveItem(itemIdx);
    }
});

您还可以观看精彩的视频指南http://docs.sencha.com/touch/2-0/#!/video/tabs-toolbars

您必须向您的应用程序添加一个控制器。在控制器中添加参考

refs: {
    myview: 'myview',
    list: 'anotherview list'
},
control : {
    list: {
        itemtap: 'onListItemTap'
    }
},
onListItemTap: function (ct) {
    var myview = this.getMyview();
    myview.setActiveItem(1)
}

如果您不了解 sencha touch 中的 MVC,请阅读 sencha 教程。例如。http://docs.sencha.com/touch/2-0/#!/guide/controllers

于 2012-06-25T11:04:11.503 回答
0

你可以将bello配置添加到tab.panel

activeItem :2

对于第一个激活的第三个项目

于 2012-06-25T12:19:21.183 回答