Как получить доступ к Sencha touch List Row index, получить значение и применить изменения? - PullRequest
1 голос
/ 13 октября 2011

Я застрял в сенсорном списке сенча, где мне нужно задать альтернативный цвет фона для строк в списке.Еще одно сомнение, как настроить список в сенсорном Сенча, потому что мне нужно добавить текстовое поле, кнопки, изображения в строке списка.Я попробовал это с html и смог сделать, есть ли способ непосредственного добавления элементов сенсорного объекта sencha в список.

1 Ответ

1 голос
/ 14 октября 2011

Вы можете использовать cls : 'customCls' Необязательный дополнительный класс CSS, который будет добавлен к элементу этого компонента (по умолчанию ''). Это может быть полезно для добавления пользовательских стилей к компоненту или его дочерним элементам с использованием стандартных правил CSS. И, может быть, вы хотите проверить это

EDIT:

Ext.regModel('Contact', {
    fields: ['firstName', 'lastName']
});

var store = new Ext.data.JsonStore({
    model  : 'Contact',
    sorters: 'lastName',
    getGroupString : function(record) {
    return record.get('lastName')[0];
    },
    data: [
        {firstName: 'Tommy',   lastName: 'Maintz'},
        {firstName: 'Rob',     lastName: 'Dougan'},
        {firstName: 'Ed',      lastName: 'Spencer'},
        {firstName: 'Jamie',   lastName: 'Avins'},
        {firstName: 'Aaron',   lastName: 'Conran'},
        {firstName: 'Dave',    lastName: 'Kaneda'},
        {firstName: 'Michael', lastName: 'Mullany'},
        {firstName: 'Abraham', lastName: 'Elias'},
        {firstName: 'Jay',     lastName: 'Robinson'}
    ]
});

Ext.onReady(function() {
    var list = new Ext.List({
        fullscreen: true,
        itemTpl : '{firstName} {lastName}',
        grouped : true,
        indexBar: true,
        store: store,
        listeners: {  // here you can add itemtap event and retrieve index number!
            itemtap:function(item,index, e){

                console.log(index);
                //so, now that you have index , you can access specific item
                console.log(this.store.data.items[index]);      
        }   
    },
    });

    list.show();

    console.log(list.getStore().data.items[0]); 
    // here you are accessing list store and then store data and then store item with index 0
}); 
...