必须下载什么Gesture文件以及应该如何完成?

时间:2012-10-19 05:24:35

标签: android gesture android-gesture

应该下载什么Gesture文件并将其粘贴到res下的Raw文件夹中?如何从已下载的手势文件中识别用户的绘制手势。谁能告诉我这个?

如果我做比较,我应该能够了解已经下载的手势文件中的手势及其描述。这将是识别Gesture库中手势(用户绘制)的最简单方法。

1 个答案:

答案 0 :(得分:3)

在android模拟器打开手势生成器应用程序然后 - >点击添加手势 - >在那里绘制你想要用于你的应用程序的手势。 添加手势后转到你的日食 - >打开ddms - >打开文件资源管理器。

在文件浏览器中有一个名为mnt / sdcard / gestures的文件夹,你可以找到你的手势文件。 现在将该文件复制到您要使用该手势操作的Raw文件夹中的项目。

之后

  private GestureLibrary gestureLib;
private static final int LARGE_MOVE = 20;
private GestureDetector gestureDetector;

make your class implements OnGesturePerformedListener

//put following code inside your on create method

GestureOverlayView gestureOverlayView = new GestureOverlayView(this);
        View inflate = getLayoutInflater().inflate(your layout file, null);
        gestureOverlayView.addView(inflate);
        gestureOverlayView.setGestureColor(Color.TRANSPARENT);
        gestureOverlayView.setUncertainGestureColor(Color.TRANSPARENT);
        gestureOverlayView.setGestureStrokeLengthThreshold(LARGE_MOVE);
        gestureOverlayView.setGestureStrokeSquarenessTreshold(1);
        gestureOverlayView.addOnGesturePerformedListener(this);
        gestureOverlayView.setEventsInterceptionEnabled(true);



        try{
            gestureDetector = new GestureDetector(your class name.this, new SimpleOnGestureListener() {
                 @Override
                 public boolean onFling(MotionEvent e1, MotionEvent e2,float velocityX, float velocityY){

                     if (e1.getX() - e2.getX() > LARGE_MOVE) {

                        // do some thing here

                         return true;
                     } else if (e2.getX() - e1.getX() > LARGE_MOVE) {


                        // do some thing here 

                         return true;
                    }
                    return false;
                    } });
            }catch(NullPointerException e){
                e.printStackTrace();
            }

希望这适合你。 快乐编码