gpt4 book ai didi

scroll - 如何在 Sencha Touch 中锁定轮播

转载 作者:行者123 更新时间:2023-12-04 19:09:37 25 4
gpt4 key购买 nike

我正在使用旋转木马并希望锁定旋转木马,直到单击按钮。是否有捷径可寻?谢谢!

到目前为止我的代码:

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'
}]
}
});

最佳答案

您需要为可锁定轮播编写自定义 View :

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 将这个自定义轮播扩展到任何地方以及您需要申请自定义 lockunlock通过按钮处理程序为您想要的可锁定旋转木马功能:
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();
}
}
]
}



]
}
});

Working Demo

关于scroll - 如何在 Sencha Touch 中锁定轮播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16467204/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com