Scroll 如何在Sencha Touch中锁定旋转木马
我正在使用旋转木马,希望锁定旋转木马,直到单击按钮。有没有一个简单的方法可以做到这一点?谢谢 到目前为止,我的代码是:Scroll 如何在Sencha Touch中锁定旋转木马,scroll,sencha-touch,sencha-touch-2,carousel,Scroll,Sencha Touch,Sencha Touch 2,Carousel,我正在使用旋转木马,希望锁定旋转木马,直到单击按钮。有没有一个简单的方法可以做到这一点?谢谢 到目前为止,我的代码是: Ext.define('BabyBen.view.MainCarousel', { extend: 'Ext.carousel.Carousel', xtype: 'maincarousel', config: { fullscreen: true, activeItem: 1, indicator:
Ext.define('BabyBen.view.MainCarousel', {
extend: 'Ext.carousel.Carousel',
xtype: 'maincarousel',
config: {
fullscreen: true,
activeItem: 1,
indicator: false,
scrollable: {
direction: 'vertical',
directionLock: true
},
items: [{
xtype: 'whatscreen'
}, {
xtype: 'startscreen'
}, {
xtype: 'whenscreen'
}]
}
});
您需要为可锁定旋转木马编写自定义视图:
Ext.define("myApp.view.LockableCarousel",{
extend: 'Ext.Carousel',
initialize: function () {
this.onDragOrig = this.onDrag;
this.onDrag = function (e) { if(!this.locked){this.onDragOrig(e);} }
},
locked: false,
lock: function () { this.locked = true; },
unlock: function () { this.locked = false; }
});
然后,您可以使用extend
将此自定义旋转木马扩展到任何位置,并且您需要通过按钮处理程序为所需的可锁定旋转木马应用自定义lock
和unlock
功能:
Ext.define("myApp.view.CustomCarousel",{
xtype: 'CustomCarousel',
extend: 'myApp.view.LockableCarousel',
config: {
id: 'LockableCarousel',
title: 'Example4',
iconCls: 'cloud',
indicator: false,
items: [
{
html : 'Item 1',
style: 'background-color: #5E99CC'
},
{
items: [
{
xtype : 'button',
text: 'Lock',
handler:function() {
Ext.getCmp('LockableCarousel').lock();
}
},
{
xtype : 'button',
text: 'Unlock',
handler:function() {
Ext.getCmp('LockableCarousel').unlock();
}
}
]
}
]
}
});
您的代码是什么样子的?@cclerville到目前为止,我有这样的代码:Ext.define('MyApp.view.MainCarousel',{extend:'Ext.carousel.carousel',xtype:'MainCarousel',config:{fullscreen:true,activeItem:1,indicator:false,scrollable:{
方向:'vertical',方向锁:true},项:[{xtype:'whatscreen'},{xtype:'startscreen'},{xtype:'whenscreen'}]});你能把它放在你的问题中吗?它更容易阅读。@cclerville我帮你把它放在问题中了!谢谢!非常感谢!我能把旋转木马锁上。谢谢你的时间。