CocosCreator列表滑動速度的修改

引擎版本:2.2.2,之后升級的2.4.0直接可以修改組件的Brake,貌似就可以了。

目前引擎內(nèi)置的CCScrollView.js沒有屬性或者方法直接設(shè)置列表的滑動速度。

CCScrollView.js路徑:引擎安裝路徑/resources/engine/cocos2d/core/components;


1598410039(1).jpg

打開引擎該腳本之后,里面有個_handleMoveLogic方法是控制列表滑動速度的;

    _handleMoveLogic (touch) {
        let deltaMove = touch.getDelta();
        this._processDeltaMove(deltaMove);
    },

所以我們在此基礎(chǔ)上修改引擎代碼如下:
1、新建腳本:
UIScrollview.js(可以隨意起名字)
2、腳本代碼如下:

/**
 * 列表的滑動速度修改腳本
 */
cc.Class({
    //繼承列表組件的腳本
    extends: cc.ScrollView,

    properties: {
        //自定義速率
        scrollSpeed: {
            default: 0.2,
            type: cc.Float
        },
    },

    _handleMoveLogic (touch) {
        let that = this;
        let deltaMove = touch.getDelta();
        //給默認(rèn)的移動速度×自定義速率
        that._processDeltaMove(deltaMove.mul(this.scrollSpeed));
    }
});

3、將項目里的需要修改滑動速度的節(jié)點的Scrollview組件刪除,手動添加自定義組件UIScrollview如下圖;


1598410744(1).jpg

打開自定義組件之后可發(fā)現(xiàn),組件多了一個屬性可以修改,該屬性就是自定義速率,手動修改即可;


1598410762(1).jpg

之后運(yùn)行項目就會發(fā)現(xiàn),列表不管是觸摸階段的滑動還是觸摸結(jié)束之后的滑動,速度都是修改后的。

如有問題,請多指教。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容