在我使用 AndEngine 的游戏应用程序中,我试图检测按钮 Sprite 上的滑动动作以在手指在按钮 Sprite 上方时放大按钮,并在手指从 Sprite 上滑动时将比例设置回 1.0f。意义:
- 手指在按钮区域外向下
- 滑动按钮(并且按钮被放大)但保持手指向下
- 继续滑动关闭按钮,按钮返回原始比例。
我试过以下:
myButton = new Sprite(posX, posY, resourcesManager.rightButtonRegion, vbom) {
@Override
public boolean onAreaTouched(final TouchEvent pAreaTouchEvent, final float pTouchAreaLocalX, final float pTouchAreaLocalY) {
switch (pAreaTouchEvent.getAction()) {
case TouchEvent.ACTION_DOWN:
this.setScale(1.25f);
break;
case TouchEvent.ACTION_UP:
this.setScale(1.0f);
break;
case TouchEvent.ACTION_MOVE:
this.setScale(1.0f);
break;
case TouchEvent.ACTION_OUTSIDE:
this.setScale(1.0f);
break;
}
return true;
}
};
但是,如果我在按钮外部开始滑动并将手指移到按钮上,则按钮的大小不会按比例放大。感谢任何有关如何实现此效果的指针。如果有使用 SurfaceView 的非 Andengine 解决方案,我也会很感激对此的任何看法。