Установка свойства панели инструментов для nestedList - PullRequest
0 голосов
/ 17 декабря 2011

Я новичок в Sencha Touch 1. Я хотел бы добавить больше элементов на панель инструментов NestedList по умолчанию, но не могу найти работающий пример использования свойства "панель инструментов".

Из Документы Sencha :

toolbar : Object
Ext.Toolbar shared across each of the lists. This will only exist when useToolbar is true which is the default.  

Единственный способ, которым мне удалось это сделать, - использовать метод initComponent при создании NestedList, но я чувствую, что заново изобретаю колесо ...

var myNestedList= new Ext.NestedList({
    fullscreen: true,
    title: 'myTitle',
    useToolbar: true,
    store: myStore,
    initComponent : function() {
            ...
            } 

... изменение этого раздела

if (this.useToolbar) {
    // Add the back button
    this.backButton = new Ext.Button({
        text: this.backText,
        ui: 'back',
        handler: this.onBackTap,
        scope: this,
        // First stack doesn't show back
        hidden: true
    });

    // MY ADDED CODE
    var buttonsSpec = [
        { xtype: 'spacer' },
        { xtype: 'searchfield', placeHolder: 'Search', name: 'search' }
    ];
            // END MY ADDED CODE


    //this.searchButton.addListener('action', searchHandler);
    if (!this.toolbar || !this.toolbar.isComponent) {

                 /**
         * @cfg {Object} toolbar
         * Configuration for the Ext.Toolbar that is created within the Ext.NestedList.
         */
        this.toolbar = Ext.apply({}, this.toolbar || {}, {
            dock: 'top',
            xtype: 'toolbar',
            ui: 'light',
            title: title,
            items: [buttonsSpec] //MY ADDED CODE, WAS items: []
        });

        this.toolbar.items.unshift(this.backButton);
        this.toolbar = new Ext.Toolbar(this.toolbar);

        this.dockedItems = this.dockedItems || [];
        this.dockedItems.push(this.toolbar);
    } else {
        this.toolbar.insert(0, this.backButton);
    }
}

1 Ответ

0 голосов
/ 19 декабря 2011

Это не ваша область поиска, но может быть альтернативным решением.

Создайте свою собственную панель инструментов, поместите ее в верхнюю часть страницы и отключите панель инструментов для вложенных списков.

useToolbar:false,

и для обработчика кнопки назад;этот метод поможет вам;

nestedlist.onBackTap();

Надеюсь, он поможет.

...