Extjs Sencha touch DataView无法正确垂直滚动

Extjs Sencha touch DataView无法正确垂直滚动,extjs,scroll,dataview,Extjs,Scroll,Dataview,我在应用程序中使用自定义数据视图,该数据视图设置为垂直滚动,并在以后添加到面板中 但现在DataView无法正常滚动,问题是: 当我放下DataView时,它可以向下滚动,但当我松开手指时,它会自动滚动回顶部 有人能帮我查一下原因吗 谢谢~~ 这是我的密码: ===================数据视图============== Ext.define("cherry.view.UserActivityList", { extend: 'Ext.dataview.DataView',

我在应用程序中使用自定义数据视图,该数据视图设置为垂直滚动,并在以后添加到面板中

但现在DataView无法正常滚动,问题是: 当我放下DataView时,它可以向下滚动,但当我松开手指时,它会自动滚动回顶部

有人能帮我查一下原因吗

谢谢~~

这是我的密码:

===================数据视图==============

Ext.define("cherry.view.UserActivityList", {
    extend: 'Ext.dataview.DataView',
    xtype: 'user-activity-list',
    requires: [
        'cherry.store.UserActivityStore',
        'Ext.dataview.DataView',
        'Ext.XTemplate'
    ],

    config: {
        styleHtmlContent: true,
        height: '100%',
        itemTpl: new Ext.XTemplate(
            '<tpl for=".">',
            '<div class="activity-ctn">',
            '  <div class="activity-content">{content}</div>',
            '</tpl>'
        )
    },

    initialize: function () {
        this.callParent(arguments);
        var me = this;
        var store = Ext.getStore('user-activity-store');
        store.load();
        me.setStore(store);
    }
});
Ext.define('cherry.view.Main', {
    extend: 'Ext.Panel',
    xtype: 'main',
    requires: [
        'cherry.view.ComposeToolbar',
        'cherry.view.Menubar',
        'cherry.view.UserActivityList'
    ],
    config: {
        layout: 'card',
        id: 'main-container-view',
        scrollable: null,
        items: [
            {
                docked: 'top',
                xtype: 'toolbar',
                title: 'cherry',
                id: 'main-toolbar',
                cls: 'main-toolbar',
                items: [
                    {
                        xtype: 'button',
                        iconCls: 'menu2',
                        text: 'Menu',
                        iconMask: true,
                        handler: function () {
                            Ext.Viewport.toggleMenu('left');
                        }
                    },
                    {
                        xtype: 'spacer'
                    },
                    {
                        xtype: 'button',
                        iconCls: 'loop2',
                        text: 'Refresh',
                        iconMask: false,
                        handler: function () {
                            Ext.getStore('user-activity-store').load();
                            Ext.ComponentQuery.query('#user-activities-list-view')[0].refresh();
                        }
                    }
                ]
            },
            {
                xtype: 'compose-toolbar'
            },
            {
                xtype: 'user-activity-list',
                id: 'user-activities-list-view',
                itemId: 'user-activities-list-view',
                layout: 'fit',
                height:'100%',
                cls:'dataview-ctn',
                scrollable:{
                    direction:'vertical'
                }
            }
        ]
    },
    initialize: function () {
        Ext.Viewport.setMenu(cherry.view.Menubar.createMenu('left'), {
            side: 'left',
            reveal: true
        });
    }
});

您的错误似乎是由于用户活动列表中的布局配置造成的

{
    xtype: 'user-activity-list',
    id: 'user-activities-list-view',
    itemId: 'user-activities-list-view',
    layout: 'fit',
    height:'100%',
    cls:'dataview-ctn',
    scrollable:{
        direction:'vertical'
    }
}
数据视图必须始终将其布局设置为自动。正如构造函数所述,顺便说一句,您应该看到一个日志错误

constructor: function(config) {
    var me = this,
        layout;

    me.hasLoadedStore = false;

    me.mixins.selectable.constructor.apply(me, arguments);

    me.indexOffset = 0;

    me.callParent(arguments);

    //<debug>
    layout = this.getLayout();
    if (layout && !layout.isAuto) {
        Ext.Logger.error('The base layout for a DataView must always be an Auto Layout');
    }
    //</debug>
}
构造函数:函数(配置){
var me=这个,
布局;
me.hasLoadedStore=false;
me.mixins.selective.constructor.apply(me,参数);
me.indexOffset=0;
me.callParent(参数);
//
layout=this.getLayout();
if(layout&&!layout.isAuto){
错误('数据视图的基本布局必须始终是自动布局');
}
//
}
尝试删除布局配置,它将修复您的错误


干杯

谢谢欧内斯托,你的答案是正确的~~非常感谢!