java - LibGDX - 返回特定舞台坐标的所有 Actor

标签 java libgdx scene2d

我正在尝试找到一种方法来“审查”特定舞台坐标上的所有 Actor ,以查看是否有任何 Actor 具有特定的标识符(例如名称)。

阶段内的 hit 方法(如下面的代码所示)对此效果很好,但在找到第一个 Actor 后停止(如果多个 Actor 重叠,这是一个问题)。

@Override
   public boolean touchDown(int screenX, int screenY, int pointer, int button) {
      Vector2 coord = stage.screenToStageCoordinates(new Vector2((float)screenX,(float)screenY));
      Actor hitActor = stage.hit(coord.x,coord.y,false);

      if(hitActor != null)
         Gdx.app.log("HIT",hitActor.getName());

      return true;
   }

有没有办法让 hit 方法在找到第一个 Actor 后继续运行并在数组中返回结果(或其他类似的方法),或者我最好只循环遍历所有 Actor 并检查是否每次边界都重叠?

最佳答案

我认为循环遍历所有 Actor 并检查他们是否被击中是唯一的方法,因为 stage.hit() 只返回该触摸点最深的 Actor 。

关于java - LibGDX - 返回特定舞台坐标的所有 Actor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46125609/

相关文章:

java - 从继承的静态方法中获取调用者类名

java - ActionBarSherlock 自定义 NavigationDrawer 图标

桌面系统上的 Libgdx 多点触控

java - 点击监听器不起作用

java - Scene2d适合非UI显示吗?

java - 如何在 Tomcat 7 上使用 UrlRewriteFilter 缩短/清理 URL

java - 将包含 Eclipse 项目的 CVS 存储库转换为 git 的最可靠方法?

Android libgdx - 检查是否触摸图像

java - 我如何在触摸时启动动画,该动画将在到达 Sprite 表末尾后停止?

java - Libgdx设置TextField大小不会改变其大小