Sencha列表用键盘滚动

时间:2014-01-16 06:02:27

标签: extjs sencha-touch sencha-touch-2

我在我的应用程序中使用sencha列表。它是一个可滚动的列表。我想通过 up down 键和键盘上的手势来滚动列表。有谁知道怎么做?

请帮帮我。

这是我的代码:

{      
    xtype: 'list',
    pinHeaders: false,
    variableHeights: false,
    itemTpl:
            '<div>' +
            '<div>{name}</div>' +
            '</div>',
    store: 'myStore',
    grouped: true,
    onItemDisclosure: true
}

1 个答案:

答案 0 :(得分:0)

查看这个小提琴https://fiddle.sencha.com/#fiddle/53t

您可以在应用程序启动功能中的keydown事件上添加文档eventlistener,然后按列表项的高度滚动。

Ext.application({
    name: 'Fiddle',
    launch: function() {
        Ext.Viewport.add({
            xtype: 'slidelist'
        });
        document.addEventListener("keydown", Ext.bind(onBackKeyDown, this), false);
        function onBackKeyDown(e) {
            switch(e.keyIdentifier)
            {
                case "Up":
                    Ext.ComponentQuery.query('slidelist')[0].getScrollable().getScroller().scrollBy(0, -47);
                break;
                case "Down":
                    Ext.ComponentQuery.query('slidelist')[0].getScrollable().getScroller().scrollBy(0, 47);
                break;
                default:
                break;
            }
        }
    }
});