Стек два Sencha Ext.Lists по вертикали

Я хочу сложить два Sencha Touch Ext.List по вертикали. Я хочу, чтобы оба этих списка принадлежали контейнеру с возможностью прокрутки. У меня проблема в том, что я не уверен, как настроить эти списки, чтобы они были полностью развернутыми компонентами (контейнер должен заботиться о прокрутке).

Т.е. вам нужно было бы прокрутить все содержимое первого списка, чтобы попасть во второй список.

Кроме того, содержащий контейнер должен также иметь возможность заполнять другими сложенными компонентами, такими как форма.

Пример:

-> Container (should show scroll bars if contained content doesn't fit in the container)
   -> Form (should not show any scrollbars, thus fully expanded)
   -> List (should not show any scrollbars, thus fully expanded)
   -> List (should not show any scrollbars, thus fully expanded)

ОБНОВИТЬ

Мне удалось заставить что-то работать, установив прокручиваемое значение в ноль для списков. Однако он работает только с версиями Sencha Touch до 2.1.0, поэтому 2.0.1 работает нормально.

    var mainPanel = Ext.create("Ext.Container",
    {
        fullscreen: true,
        layout: 'vbox'
    });

    var subPanel = Ext.create("Ext.Container", {
        flex: 1,
        layout: 'vbox'
    });

    Ext.define('MyList', {
        extend: 'Ext.List',
        config: {
            scrollable: null,
            fullscreen: false
        }
    });

    var itemName = 'MyItem';
    Ext.define(itemName, {
        extend: 'Ext.data.Model',
        config: {
            fields: ["title"]
        }
    });

    var store = Ext.create('Ext.data.Store', {
        model: itemName,
        data: [
                { title: 'row1' },
                { title: 'row2' }
            ]
    });

    var list1 = Ext.create('MyList');
    list1.setItemTpl('<div>List 1 - {title}</div>');
    list1.setStore(store);

    var list2 = Ext.create('MyList');
    list2.setItemTpl('<div>List 2 - {title}</div>');
    list2.setStore(store);

    subPanel.add(list1);
    subPanel.add(list2);

    mainPanel.add(subPanel);
    Ext.Viewport.add(mainPanel);

Есть идеи, почему он не работает в 2.1.0+?

1 ответ

Решение

Вы пытались установить scrollable Конфигурация списков для false?

Я рекомендую продлить Ext.dataview.DataView а не начиная с Ext.dataview.List, Вам придется создать некоторые из ваших собственных стилей, но я обнаружил, что это обычно проще, чем пытаться удалить нежелательную функциональность из Ext.List.

Другие вопросы по тегам