之前项目需要用到,而且别人也已经有做过这个功能了,但是自己找了很久都没找到大神分享的方法,所以这边分享一下
监听这两个事件就可以了,还是上代码比较实际
属性
properties: {
Scroll: cc.Node, //scrollView
lastoffsetY: 0, //上一次y点
},
注册监听
self.Scroll.on('scrolling', self.onScrollingEvent, self);
self.Scroll.on('scroll-began', self.onScrollBeganEvent, self);
监听回调
/**
* 滑动开始监听
* @param {any} event
*/
onScrollBeganEvent(event){
var self = this;
self.lastoffsetY = self.Scroll.getComponent(cc.ScrollView).getScrollOffset().y;
console.log("toby: onScrollBeganEvent = " + event + "," + self.lastoffsetY);
},
/**
* 滑动中监听
* @param {any} event
*/
onScrollingEvent(event){
var self = this;
var offsetY = self.Scroll.getComponent(cc.ScrollView).getScrollOffset().y;
console.log("toby: onScrollingEvent = " + event + "," + offsetY);
if (self.lastoffsetY > offsetY) {
console.log("toby: onScrollingEvent 向下滑动");
}
else{
console.log("toby: onScrollingEvent 向上滑动");
}
self.lastoffsetY = offsetY;
},