zoukankan      html  css  js  c++  java
  • cocos2dx触屏响应(单点触摸)CCTouchBegan,CCTouchMove,CCTouchEnd

    今天白白跟大家分享一下cocos2dx单点触摸经验。

    cocos2dx触摸CCTouch类的单点触摸有四个函数CCTouchBegan,CCTouchMove,CCTouchEnd,CCTouchCancalled。

    这些触摸的函数不一定每一个都要响应,可是CCTouchBegan是一定要有的,他的返回值是bool,其他函数返回值为void

    以下我们看看怎样触摸:

    首先我们新建一个项目Hello

    1、在源文件Hello.h声明函数

        void registerWithTouchDispatcher(void);                 //注冊触摸
        bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);    //触摸開始,注意返回类型,假设返回false,就不用写以下三个函数
        void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent);    //触摸滑动                              
        void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent);    //触摸结束                  
        void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent);//触摸取消  比如中途来点

    2、 开启触摸

    在须要开启触摸的地方增加即可,比如init里面

    bool Hello::init()
    {
        setTouchEnabled(true);
        return true;
    }


    3、实现注冊函数

    void Hello::registerWithTouchDispatcher()           
    {
        CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, 0, true);
    }


    4、实现ccTouchBegan

    bool Hello::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent)
    {	
        CCPoint touchpoint = pTouch->getLocation();		 //获取触摸坐标
        CCLOG("touch began, touchpoint is %f", touchpoint);
        return true;      //true表示继续响应CCTouchMove,CCTouchEnd,CCTouchCancalled,false表示不响应。
    }


    5、实现ccTouchMove
    void Hello::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent)
    {	
        CCPoint touchpoint = pTouch->getLocation();		 //获取触摸坐标
        CCLOG("touch move, touchpoint is %f", touchpoint);
    }

    6、实现ccTouchEnded

    void Hello::ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent)
    {
        CCPoint touchpoint = pTouch->getLocation(); //获取触摸坐标 
        CCLOG("touch end, touchpoint is %f", touchpoint);
    }

    7、实现ccTouchCancalled

    void Hello::ccTouchCancalled(CCTouch *pTouch, CCEvent *pEvent)
    {	
        CCPoint touchpoint = pTouch->getLocation();		 //获取触摸坐标
        CCLOG("touch end, touchpoint is %f", touchpoint);
    }


    ok,触摸完成,请大家指示!




  • 相关阅读:
    注意身体
    用生命去战斗
    来到华师,一切清零
    linux fork()函数 转载~~~~
    小端大端
    位域
    内存泄漏(memory leak)和内存溢出
    stack,heap的区别
    内存管理简便复习总结
    虚函数&&虚继承
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4034856.html
Copyright © 2011-2022 走看看