Extjs Sencha touch DataView无法正确垂直滚动
我在应用程序中使用自定义数据视图,该数据视图设置为垂直滚动,并在以后添加到面板中 但现在DataView无法正常滚动,问题是: 当我放下DataView时,它可以向下滚动,但当我松开手指时,它会自动滚动回顶部 有人能帮我查一下原因吗 谢谢~~ 这是我的密码: ===================数据视图==============Extjs Sencha touch DataView无法正确垂直滚动,extjs,scroll,dataview,Extjs,Scroll,Dataview,我在应用程序中使用自定义数据视图,该数据视图设置为垂直滚动,并在以后添加到面板中 但现在DataView无法正常滚动,问题是: 当我放下DataView时,它可以向下滚动,但当我松开手指时,它会自动滚动回顶部 有人能帮我查一下原因吗 谢谢~~ 这是我的密码: ===================数据视图============== Ext.define("cherry.view.UserActivityList", { extend: 'Ext.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){
错误('数据视图的基本布局必须始终是自动布局');
}
//
}
尝试删除布局配置,它将修复您的错误
干杯 谢谢欧内斯托,你的答案是正确的~~非常感谢!