【发布时间】:2019-03-08 14:56:54
【问题描述】:
我有一个主页按钮图标,它只是一个带有图像的普通精灵。 我想在触摸此按钮时执行一些操作。如何向此按钮添加触摸侦听器,或者有其他更简单的方法吗?
【问题讨论】:
-
ImageButton 是什么?
标签: java android libgdx sprite
我有一个主页按钮图标,它只是一个带有图像的普通精灵。 我想在触摸此按钮时执行一些操作。如何向此按钮添加触摸侦听器,或者有其他更简单的方法吗?
【问题讨论】:
标签: java android libgdx sprite
这样做的一种方法是使用按钮的按钮边界设置Rectangle。
Rectangle buttonBounds = new Rectangle(buttonX, buttonY, buttonWidth, buttonHeight);
如果您想检查用户是否触摸了按钮,请在您的 render() 方法中输入:
if(Gdx.input.justTouched()){
Vector2 touch = viewport.unproject(new Vector2(Gdx.input.getX(), Gdx.input.getY()));
//Check if button if touched
if(buttonBounds.contains(touch)){
System.out.println("Button touched!");
//Do something
}
}
如果您不使用Viewport,您可以将viewport.unproject() 更改为cam.unproject(),其中cam 是您的Camera。
【讨论】: