利用监听事件做一个判断是在x方向还有y方向上面的判断,判断在屏幕上滑动的趋势

来源:互联网 发布:mysql update 多表 编辑:程序博客网 时间:2024/06/05 10:05

auto dis = Director::getInstance()->getEventDispatcher();

    auto listener =EventListenerTouchOneByOne::create();

    

    listener->onTouchBegan = [=](Touch * t,Event *e){

       startPos = t->getLocation();

        

       return true;

    };

    

    listener->onTouchMoved = [=](Touch *t,Event *e){

       Point endPos = t->getLocation();

       if (abs(startPos.x - endPos.x) >abs(startPos.y - endPos.y)) {//这里就是判断是在那个方向上移动的距离比较大一点,如果条件成立就说明现在是在x方向上面的移动的距离大一点。。

           if ((startPos.x - endPos.x) >0) {

               log("movex--");

            }else{

           log("movex++");

            }

            

        }

       else {

           if ((startPos.y - endPos.y) >0) {

               log("movey--");

            }

           else{

               log("movey ++");

            }

        }

    

    };

    

    Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listener,this);

    


0 0
原创粉丝点击