目前我手动将InputListener添加到每个图像中。
类似下面的代码:
grid1 = new Image(gridTex1);
grid2 = new Image(gridTex2);
grid3 = new Image(gridTex3);
grid4 = new Image(gridTex4);
grid5 = new Image(gridTex5);
grid1.addListener(new InputListener() {
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
//doSomething
return true;
}
});
grid2.addListener(new InputListener() {
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
//doSomething
return true;
}
});
grid3.addListener(new InputListener() {
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
//doSomething
return true;
}
});
grid4.addListener(new InputListener() {
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
//doSomething
return true;
}
});
grid5.addListener(new InputListener() {
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
//doSomething
return true;
}
});
如果我有200个图像,并且每个图像我都想拥有InputListener,我不认为这是方法。
所以,我打算做的是创建一个类,然后说#34; Grid", 这个类有InputListener,它将返回该类中的值。 然后我可以将这个类存储在数组中,其中所有成员都有inputListener。
也许这是错误的方式,请给我一些指导。提前谢谢。
答案 0 :(得分:0)
InputEvent
的实例允许获取related actor - 虽然这仅对enter
和exit
事件有效。因此,应该可以有一个跟踪当前已输入图像的类,然后在touchDown
事件期间使用该图像。