使用Android的触摸屏捕捉像(愤怒的小鸟)这样的游戏的动作或击键

时间:2013-02-28 07:46:21

标签: java android android-intent

我基本上需要找出是否有办法使用Android的触摸屏捕捉游戏的动作或按键,例如“愤怒的小鸟”等,并将它们保存到设备上的文件中。

我确定这些手机存在安全问题,并且不希望本机“按键记录”,但如果它是一个位于另一个游戏上的图层,那就应该没问题

请让我有任何办法实现同样的目标。非常感谢您的帮助。在此先感谢

2 个答案:

答案 0 :(得分:0)

您可以使用系统覆盖覆盖屏幕,如this answer

所示

但是,请记住,您可以使用所有触摸事件,也可以让它们通过。您无法先触摸触摸事件,然后将其传递到应用程序或您下方的视图中。

此外,如果设备具有屏幕系统导航按钮(主页,后退和最近的应用程序),则覆盖图将不会涵盖这些按钮。

答案 1 :(得分:0)

实施onTouchEvent(),并根据用户按下并抬起的位置计算dx和dy。您可以使用这些值来确定移动的方向。

float x1, x2, y1, y2, dx, dy;
String direction;
switch(event.getAction()) {
    case(MotionEvent.ACTION_DOWN):
        x1 = event.getX();
        y1 = event.getY();
        break;
    case(MotionEvent.ACTION_UP) {
        x2 = event.getX();
        y2 = event.getY();
        dx = x2-x1;
            dy = y2-y1;

            // Use dx and dy to determine the direction
        if(Math.abs(dx) > Math.abs(dy)) {
            if(dx>0) directiion = "right";
            else direction = "left";
        } else {
            if(dy>0) direction = "down";
            else direction = "up";
        }
    }
}