日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

gesturedetector.java_android使用gesturedetector手势识别示例分享

發布時間:2023/12/4 编程问答 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 gesturedetector.java_android使用gesturedetector手势识别示例分享 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

public class MyGestureLintener extends SimpleOnGestureListener {

private Context context;

public MyGestureLintener(Context context) {

super();

this.context = context;

}

// 單擊,觸摸屏按下時立刻觸發

/*@Override

public boolean onDown(MotionEvent e) {

// TODO Auto-generated method stub

Toast.makeText(context, "Down " + e.getAction(), Toast.LENGTH_SHORT)

.show();

return true;

}*/

// 雙擊,手指在觸摸屏上迅速點擊第二下時觸發

@Override

public boolean onDoubleTap(MotionEvent e) {

// TODO Auto-generated method stub

return super.onDoubleTap(e);

}

// 雙擊的按下跟抬起各觸發一次

@Override

public boolean onDoubleTapEvent(MotionEvent e) {

// TODO Auto-generated method stub

return super.onDoubleTapEvent(e);

}

// 滑動,觸摸屏按下后快速移動并抬起,會先觸發滾動手勢,跟著觸發一個滑動手勢

@Override

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,

float velocityY) {

// TODO Auto-generated method stub

return super.onFling(e1, e2, velocityX, velocityY);

}

// 長按,觸摸屏按下后既不抬起也不移動,過一段時間后觸發

@Override

public void onLongPress(MotionEvent e) {

// TODO Auto-generated method stub

Toast.makeText(context, "LONG " + e.getAction(), Toast.LENGTH_SHORT)

.show();

}

// 滾動,觸摸屏按下后移動

@Override

public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,

float distanceY) {

Toast.makeText(context, "onScroll " + e2.getAction(), Toast.LENGTH_SHORT)

.show();

return true;

}

// 短按,觸摸屏按下后片刻后抬起,會觸發這個手勢,如果迅速抬起則不會

@Override

public void onShowPress(MotionEvent e) {

// TODO Auto-generated method stub

Toast.makeText(context, "Show " + e.getAction(), Toast.LENGTH_SHORT)

.show();

}

// 單擊確認,即很快的按下并抬起,但并不連續點擊第二下

/*@Override

public boolean onSingleTapConfirmed(MotionEvent e) {

// TODO Auto-generated method stub

Toast.makeText(context, "onSingleTapConfirmed " + e.getAction(), Toast.LENGTH_SHORT)

.show();

return true;

}*/

// 抬起,手指離開觸摸屏時觸發(長按、滾動、滑動時,不會觸發這個手勢)

/*@Override

public boolean onSingleTapUp(MotionEvent e) {

// TODO Auto-generated method stub

Toast.makeText(context, "onSingleTapUp " + e.getAction(), Toast.LENGTH_SHORT)

.show();

return true;

}*/

public class MainActivity extends Activity {

private GestureDetector mGestureDetector;//手勢對象

private MyGestureLintener myGestureLintener;//手勢監聽的接口對象

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

myGestureLintener = new MyGestureLintener(this);

//手勢對象的構造方法

mGestureDetector = new GestureDetector(this,

myGestureLintener);

}

/**GestureDetector類的onTouchEvent方法用來辨別不同的手勢*/

@Override

public boolean onTouchEvent(MotionEvent event) {

boolean b = false;

int i = event.getAction();

int j = MotionEvent.ACTION_MOVE;

System.out.println(i+""+j);

b = mGestureDetector.onTouchEvent(event);

if (b) {

Intent in = new Intent();

in.setClass(this, testActivity.class);

startActivity(in);

}

return b;

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

}

總結

以上是生活随笔為你收集整理的gesturedetector.java_android使用gesturedetector手势识别示例分享的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。