应该下载什么手势文件并将其粘贴到 res 下的 Raw 文件夹中?如何从已下载的手势文件中识别用户绘制的手势。谁能告诉我这个?
如果我进行比较,我应该能够了解手势及其在已下载的手势文件中的描述。这将是识别手势库中手势(用户绘制)的最简单方法。
应该下载什么手势文件并将其粘贴到 res 下的 Raw 文件夹中?如何从已下载的手势文件中识别用户绘制的手势。谁能告诉我这个?
如果我进行比较,我应该能够了解手势及其在已下载的手势文件中的描述。这将是识别手势库中手势(用户绘制)的最简单方法。
在 android 模拟器中打开手势生成器应用程序然后 --> 单击添加手势 --> 在此处绘制您想要用于您的应用程序的手势。添加手势后,转到您的 Eclipse IDE --> 打开 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();
}
希望这对你有用。快乐编码