android使用gesturedetector手勢(shì)識(shí)別示例分享
public class MyGestureLintener extends SimpleOnGestureListener {
private Context context;
public MyGestureLintener(Context context) {
super();
this.context = context;
}
// 單擊,觸摸屏按下時(shí)立刻觸發(fā)
/*@Override
public boolean onDown(MotionEvent e) {
// TODO Auto-generated method stub
Toast.makeText(context, "Down " + e.getAction(), Toast.LENGTH_SHORT)
.show();
return true;
}*/
// 雙擊,手指在觸摸屏上迅速點(diǎn)擊第二下時(shí)觸發(fā)
@Override
public boolean onDoubleTap(MotionEvent e) {
// TODO Auto-generated method stub
return super.onDoubleTap(e);
}
// 雙擊的按下跟抬起各觸發(fā)一次
@Override
public boolean onDoubleTapEvent(MotionEvent e) {
// TODO Auto-generated method stub
return super.onDoubleTapEvent(e);
}
// 滑動(dòng),觸摸屏按下后快速移動(dòng)并抬起,會(huì)先觸發(fā)滾動(dòng)手勢(shì),跟著觸發(fā)一個(gè)滑動(dòng)手勢(shì)
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
// TODO Auto-generated method stub
return super.onFling(e1, e2, velocityX, velocityY);
}
// 長(zhǎng)按,觸摸屏按下后既不抬起也不移動(dòng),過(guò)一段時(shí)間后觸發(fā)
@Override
public void onLongPress(MotionEvent e) {
// TODO Auto-generated method stub
Toast.makeText(context, "LONG " + e.getAction(), Toast.LENGTH_SHORT)
.show();
}
// 滾動(dòng),觸摸屏按下后移動(dòng)
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
Toast.makeText(context, "onScroll " + e2.getAction(), Toast.LENGTH_SHORT)
.show();
return true;
}
// 短按,觸摸屏按下后片刻后抬起,會(huì)觸發(fā)這個(gè)手勢(shì),如果迅速抬起則不會(huì)
@Override
public void onShowPress(MotionEvent e) {
// TODO Auto-generated method stub
Toast.makeText(context, "Show " + e.getAction(), Toast.LENGTH_SHORT)
.show();
}
// 單擊確認(rèn),即很快的按下并抬起,但并不連續(xù)點(diǎn)擊第二下
/*@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
// TODO Auto-generated method stub
Toast.makeText(context, "onSingleTapConfirmed " + e.getAction(), Toast.LENGTH_SHORT)
.show();
return true;
}*/
// 抬起,手指離開觸摸屏?xí)r觸發(fā)(長(zhǎng)按、滾動(dòng)、滑動(dòng)時(shí),不會(huì)觸發(fā)這個(gè)手勢(shì))
/*@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;//手勢(shì)對(duì)象
private MyGestureLintener myGestureLintener;//手勢(shì)監(jiān)聽的接口對(duì)象
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myGestureLintener = new MyGestureLintener(this);
//手勢(shì)對(duì)象的構(gòu)造方法
mGestureDetector = new GestureDetector(this,
myGestureLintener);
}
/**GestureDetector類的onTouchEvent方法用來(lái)辨別不同的手勢(shì)*/
@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;
}
}
- Android GestureDetector用戶手勢(shì)檢測(cè)實(shí)例講解
- Android GestureDetector手勢(shì)滑動(dòng)使用實(shí)例講解
- Android手勢(shì)識(shí)別器GestureDetector使用詳解
- Android自定義viewgroup可滾動(dòng)布局 GestureDetector手勢(shì)監(jiān)聽(5)
- Android自定義GestureDetector實(shí)現(xiàn)手勢(shì)ImageView
- Android GestureDetector實(shí)現(xiàn)手勢(shì)滑動(dòng)效果
- Android編程使用GestureDetector實(shí)現(xiàn)簡(jiǎn)單手勢(shì)監(jiān)聽與處理的方法
- Android觸摸及手勢(shì)操作GestureDetector
- Android使用手勢(shì)監(jiān)聽器GestureDetector遇到的不響應(yīng)問(wèn)題
- Android如何使用GestureDetector進(jìn)行手勢(shì)檢測(cè)詳解
相關(guān)文章
Android編程簡(jiǎn)易實(shí)現(xiàn)XML解析的方法詳解
這篇文章主要介紹了Android編程簡(jiǎn)易實(shí)現(xiàn)XML解析的方法,結(jié)合實(shí)例形式總結(jié)分析了Android操作xml文件的各種常見技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-08-08
Android實(shí)現(xiàn)3D推拉門式滑動(dòng)菜單源碼解析
這篇文章主要為大家詳細(xì)解析了Android實(shí)現(xiàn)3D推拉門式滑動(dòng)菜單源碼以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。2017-11-11
Android開發(fā)中的簡(jiǎn)單設(shè)置技巧集錦
這篇文章主要介紹了Android開發(fā)中的簡(jiǎn)單設(shè)置技巧,較為詳細(xì)的匯總了Android針對(duì)壁紙、語(yǔ)言、音量、錄音等多種設(shè)置的方法,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2016-06-06
Android開發(fā)使用Message對(duì)象分發(fā)必備知識(shí)點(diǎn)詳解
這篇文章主要為大家介紹了Android開發(fā)使用Message對(duì)象分發(fā)必備知識(shí)點(diǎn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
Android自定義viewGroup實(shí)現(xiàn)點(diǎn)擊動(dòng)畫效果
這篇文章主要介紹了Android自定義viewGroup實(shí)現(xiàn)點(diǎn)擊動(dòng)畫效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
Android普通應(yīng)用升級(jí)為系統(tǒng)應(yīng)用并獲取系統(tǒng)權(quán)限的操作
這篇文章主要介紹了Android普通應(yīng)用升級(jí)為系統(tǒng)應(yīng)用并獲取系統(tǒng)權(quán)限的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
詳解OpenGL Shader彩虹條紋效果的實(shí)現(xiàn)
這篇文章主要為大家介紹了如何通過(guò)OpenGL Shader實(shí)現(xiàn)彩虹條紋效果,最后的效果和圖片處理軟件colorow中的彩虹效果濾鏡相似,需要的可以參考一下2022-02-02
Android?hid發(fā)送apdu格式數(shù)據(jù)示例詳解
這篇文章主要介紹了Android?hid發(fā)送apdu格式數(shù)據(jù),在?Android?中,如果你想通過(guò)?HID(Human?Interface?Device)發(fā)送?APDU?格式的數(shù)據(jù),通常會(huì)涉及?USB?HID?設(shè)備或藍(lán)牙?HID?設(shè)備,本文給大家講解的非常詳細(xì),需要的朋友可以參考下2023-08-08

