【原】cocos2d-js触摸手势随意拖拽组件

用的cocos creator。最近本人写麻将拖拽出牌时需用到手势。自己简单的了解了下。(本人新手)。实现效果。拖拽一个组件到界面任意位置,组件随手指移动。

cc.Class({

extends: cc.Component,

properties: {

label: {

default: null,

type: cc.Label

},

// defaults, set visually when attaching this script to the Canvas

text: 'Hello, World!',

mySpri:{

default:null,

type:cc.Sprite,

},

myButton:{

default:null,

type:cc.Button,

},

},

// use this for initialization

onLoad: function () {

this.label.string = this.text;

this.addMJTouch(this.mySpri,this.mySpri.node.getPosition());

this.addMJTouch(this.myButton,this.myButton.node.getPosition());

},

//添加触摸手势方法

addMJTouch:function(touchMJSpri,MJOriPosition){

var self=this;

touchMJSpri.node.on(cc.Node.EventType.TOUCH_START,function(event){//开始触摸,也可以只写这一个。

var temp = event.getLocation();

var tempPlayer = touchMJSpri.node.parent.convertToNodeSpaceAR(temp)

touchMJSpri.node.setPosition(tempPlayer);

})

touchMJSpri.node.on(cc.Node.EventType.TOUCH_MOVE,function(event){//移动中

var temp = event.getLocation();

var tempPlayer = touchMJSpri.node.parent.convertToNodeSpaceAR(temp)

touchMJSpri.node.setPosition(tempPlayer) ;

})

touchMJSpri.node.on(cc.Node.EventType.TOUCH_END,function(event){//手指结束触摸

var temp = event.getLocation();//全局坐标

var tempPlayer= touchMJSpri.node.parent.convertToNodeSpaceAR(temp);//转化为局部坐标

if(touchMJSpri==self.mySpri){

touchMJSpri.node.setPosition(tempPlayer) ;//组件最终停留在手指终止的地方

}else{

touchMJSpri.node.setPosition(MJOriPosition) ;//组件停留在组件最初所在位置

}

})

},

// called every frame

update: function (dt) {

},

});

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.除了方法, 其他东西都要扔到properties里面了, 并且要给出属性的默认值或者属性的存取的方法 1) 首...
    视掘阅读 1,368评论 0 0
  • 单例模式 适用场景:可能会在场景中使用到对象,但只有一个实例,加载时并不主动创建,需要时才创建 最常见的单例模式,...
    Obeing阅读 2,154评论 1 10
  • 工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。简单...
    舟渔行舟阅读 7,964评论 2 17
  • 最近几天发生了几件事: 1、我的一个朋友要调到别的地方去工作了。 2、失散多年的一个小学同学最近突然联系上了。 3...
    方邪阅读 294评论 0 1
  • 遇见了,就是遇见了 从此你的生命里 就会留有我来过的痕迹 我亦如此 曾经的耳鬓思语 缠意绵绵 如果有一天——没了 ...
    留园一梦阅读 264评论 0 0