Cocos2D 触摸帮助

发布于 2024-11-17 05:34:54 字数 77 浏览 3 评论 0原文

我是 cocos2d 库的新手,我之前使用过 libgdx 和纯 openGL。如何在 Android 版 Cocos2d 中处理触摸事件?

I`m new to cocos2d library, I worked before with libgdx and pure openGL. How can I handle a touch event in Cocos2d for Android?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

空心↖ 2024-11-24 05:34:54

Android 上处理触摸的 4 种方法定义如下:

public boolean ccTouchesBegan(MotionEvent event);

public boolean ccTouchesMoved(MotionEvent event);

public boolean ccTouchesEnded(MotionEvent event);

public boolean ccTouchesCancelled(MotionEvent event);

这些是您应该使用的侦听器。

并在 CCLayer 类的构造函数中添加以下行以启用触摸事件。

this.setIsTouchEnabled(true); 

The 4 methods for handling touches on android are defined as follows:

public boolean ccTouchesBegan(MotionEvent event);

public boolean ccTouchesMoved(MotionEvent event);

public boolean ccTouchesEnded(MotionEvent event);

public boolean ccTouchesCancelled(MotionEvent event);

These are the listeners you should use.

And also add below line in constructor of your CCLayer class to enable touch event.

this.setIsTouchEnabled(true); 
深陷 2024-11-24 05:34:54

要启动触摸事件,您必须首先设置变量

isTouchEnabled_=true;

setIsTouchEnabled(true);

否则触摸将起作用

您可以使用以下方法:-

  @Override
      public boolean ccTouchesBegan(MotionEvent event) {
}
      @Override
    public boolean ccTouchesMoved(MotionEvent event) {
}

      @Override
        public boolean ccTouchesEnded(MotionEvent event) {
}
      @Override
      public boolean ccTouchesCancelled(MotionEvent event) {
}

我已经像 CCColorLayer 中那样使用了它:-

protected GameLayer(ccColor4B color) {
        super(color);
        // TODO Auto-generated constructor stub
        isTouchEnabled_=true;
}

      @Override
          public boolean ccTouchesBegan(MotionEvent event) {
    }

To start touch event you have to first to set variable

isTouchEnabled_=true;

or

setIsTouchEnabled(true);

After that touch will work

You can use methods as:-

  @Override
      public boolean ccTouchesBegan(MotionEvent event) {
}
      @Override
    public boolean ccTouchesMoved(MotionEvent event) {
}

      @Override
        public boolean ccTouchesEnded(MotionEvent event) {
}
      @Override
      public boolean ccTouchesCancelled(MotionEvent event) {
}

I have used this like as in CCColorLayer:-

protected GameLayer(ccColor4B color) {
        super(color);
        // TODO Auto-generated constructor stub
        isTouchEnabled_=true;
}

      @Override
          public boolean ccTouchesBegan(MotionEvent event) {
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文