– 背景层执行无限重复的动作序列,先淡进,再淡出
bgLayer:runAction(cc.RepeatForever:create(cc.Sequence:create(
cc.FadeIn:create(1),
cc.FadeOut:create(1))))
– 触摸开始
local function onTouchBegan(touch, event)
return true
end
– 触摸结束
local function onTouchEnded(touch, event)
– 获取点击位置
local location = touch:getLocation()
– 根据标记获取子节点
local s = layer:getChildByTag(kTagSprite)
s:stopAllActions()-- 停止所有动作
– 执行移动动作,移动到点击的位置
s:runAction(cc.MoveTo:create(1, cc.p(location.x, location.y)))
local posX, posY = s:getPosition() – 获取精灵的位置
local o = location.x - posX – X轴的距离
local a = location.y - posY – Y轴的距离
local at = math.atan(o / a) / math.pi * 180.0 --求角度 ,反正切函数求弧度/π*180.0
–1弧度= 180/π, 1度=π/180
– 点击位置在下边
if a < 0 then
– 点击位置在左边
if o < 0 then
at = 180 + math.abs(at)
else
– 点击位置在右边
at = 180 - math.abs(at)
end
end
– 执行旋转的动作
s:runAction(cc.RotateTo:create(1, at))
end
– 单点触摸的监听器
local listener = cc.EventListenerTouchOneByOne:create()
– 注册两个回调监听方法
listener:registerScriptHandler(onTouchBegan,cc.Handler.EVENT_TOUCH_BEGAN )
listener:registerScriptHandler(onTouchEnded,cc.Handler.EVENT_TOUCH_ENDED )
local eventDispatcher = layer:getEventDispatcher()-- 时间派发器
– 绑定触摸事件到层当中
eventDispatcher:addEventListenerWithSceneGraphPriority(listener, layer)
return layer
end
– Click And Move Test
function ClickAndMoveTest()
cclog(“ClickAndMoveTest”)
local scene = cc.Scene:create()
layer = cc.Layer:create()
initWithLayer()
scene:addChild(layer)
scene:addChild(CreateBackMenuItem())
return scene
end
Cocos2d-x有两种触摸事件,一种是单点触摸,一种是多点触摸,本篇博客例子使用的单点触摸事件。
EventListenerTouchOneByOne类
– 单点触摸的监听器
local listener = cc.EventListenerTouchOneByOne:create()
– 注册两个回调监听方法
listener:registerScriptHandler(onTouchBegan,cc.Handler.EVENT_TOUCH_BEGAN )
listener:registerScriptHandler(onTouchEnded,cc.Handler.EVENT_TOUCH_ENDED )
local eventDispatcher = layer:getEventDispatcher()-- 时间派发器
– 绑定触摸事件到层当中
eventDispatcher:addEventListenerWithSceneGraphPriority(listener, layer)
最后的一个方法绑定节点到监听器中去,触摸优先级越低的越先被触摸。相同优先级的,后添加的先被触。
如果觉得博文对您有用处,请到下面链接为小巫投上神圣的一票。
**http://vote.blog.csdn.net/Article/Details?articleid=38272837
**
最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上我搜集整理的2019-2021BATJ 面试真题解析,我把大厂面试中常被问到的技术点整理成了PDF,包知识脉络 + 诸多细节。
节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。
《960全网最全Android开发笔记》
《379页Android开发面试宝典》
历时半年,我们整理了这份市面上最全面的安卓面试题解析大全
包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。
如何使用它?
1.可以通过目录索引直接翻看需要的知识点,查漏补缺。
2.五角星数表示面试问到的频率,代表重要推荐指数
《507页Android开发相关源码解析》
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。
腾讯、字节跳动、阿里、百度等BAT大厂 2019-2021面试真题解析
资料太多,全部展示会影响篇幅,暂时就先列举这些部分截图
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可获取!
2)]
腾讯、字节跳动、阿里、百度等BAT大厂 2019-2021面试真题解析
[外链图片转存中…(img-J0FTGVQA-1714936884132)]
资料太多,全部展示会影响篇幅,暂时就先列举这些部分截图
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可获取!