android開發(fā)之為activity增加左右手勢識別示例
android開發(fā)中為activity增加左右手勢識別,如右滑關(guān)閉當前頁面。
/*
* for左右手勢
* 1.復制下面的內(nèi)容到目標Activity
* 2.目標Activity的onCreate()調(diào)用initGesture()
* 3.目標Activity需implements OnTouchListener, OnGestureListener
*/
private GestureDetector mGestureDetector;
private int verticalMinDistance = 180;
private int minVelocity = 0;
private void initGesture() {
mGestureDetector = new GestureDetector((OnGestureListener) this);
}
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
if (e1.getX() - e2.getX() > verticalMinDistance && Math.abs(velocityX) > minVelocity) {
// 切換Activity
// Intent intent = new Intent(ViewSnsActivity.this, UpdateStatusActivity.class);
// startActivity(intent);
//Toast.makeText(this, "向左手勢", Toast.LENGTH_SHORT).show();
} else if (e2.getX() - e1.getX() > verticalMinDistance && Math.abs(velocityX) > minVelocity) {
// 切換Activity
// Intent intent = new Intent(ViewSnsActivity.this, UpdateStatusActivity.class);
// startActivity(intent);
//Toast.makeText(this, "向右手勢", Toast.LENGTH_SHORT).show();
finish();
overridePendingTransition(R.anim.push_right_in, R.anim.push_right_out);
}
return false;
}
@Override
public void onLongPress(MotionEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public boolean onScroll(MotionEvent arg0, MotionEvent arg1, float arg2,
float arg3) {
// TODO Auto-generated method stub
return false;
}
@Override
public void onShowPress(MotionEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public boolean onSingleTapUp(MotionEvent arg0) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
return mGestureDetector.onTouchEvent(event);
}
@Override
public boolean onDown(MotionEvent arg0) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
mGestureDetector.onTouchEvent(ev);
return super.dispatchTouchEvent(ev);
}
push_right_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="-100%p" android:toXDelta="0"
android:duration="500" />
<alpha android:fromAlpha="0.1" android:toAlpha="1.0"
android:duration="500"/>
</set>
push_right_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="100%p"
android:duration="500" />
<alpha android:fromAlpha="1.0" android:toAlpha="0.1"
android:duration="500"/>
</set>
- Android通過滑動實現(xiàn)Activity跳轉(zhuǎn)(手勢識別器應用)
- Android手勢識別器GestureDetector使用詳解
- 札記:android手勢識別功能實現(xiàn)(利用MotionEvent)
- Android View進行手勢識別詳解
- Android基礎開發(fā)之手勢識別
- Android應用開發(fā)中觸摸屏手勢識別的實現(xiàn)方法解析
- android創(chuàng)建手勢識別示例代碼
- android使用gesturedetector手勢識別示例分享
- 理解Android的手勢識別提高APP的用戶體驗
- Android使用GestureOverlayView控件實現(xiàn)手勢識別
相關(guān)文章
android的RecyclerView實現(xiàn)拖拽排序和側(cè)滑刪除示例
在平時開發(fā)應用的時候,經(jīng)常會遇到列表排序、滑動刪除的需求。這篇文章主要介紹了android的RecyclerView實現(xiàn)拖拽排序和側(cè)滑刪除示例,有興趣的可以了解一下。2017-02-02
Android使用自定義view在指定時間內(nèi)勻速畫一條直線的實例代碼
這篇文章主要介紹了Android使用自定義view在指定時間內(nèi)勻速畫一條直線的實例代碼,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05
Android調(diào)用系統(tǒng)裁剪的實現(xiàn)方法
下面小編就為大家分享一篇Android調(diào)用系統(tǒng)裁剪的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-02-02
Android webview與js的數(shù)據(jù)交互
有了WebView這個組件,Android應用開發(fā)技術(shù)也就轉(zhuǎn)嫁到html與java數(shù)據(jù)交互上來。說白了就是js與WebView的數(shù)據(jù)交互,這就是本文所要討論的2017-04-04
深入解析Android中View創(chuàng)建的全過程
這篇文章主要給大家深入的解析了關(guān)于Android中View創(chuàng)建的全過程,文中介紹的非常詳細,相信對大家會有一定的參考借鑒,需要的朋友們下面來一起學習學習吧。2017-03-03
Android CameraX結(jié)合LibYUV和GPUImage自定義相機濾鏡
之前使用Camera實現(xiàn)了一個自定義相機濾鏡(Android自定義相機濾鏡 ),但是運行起來有點卡頓,這次用Camerax來實現(xiàn)一樣的效果發(fā)現(xiàn)很流暢,在此記錄一下,也希望能幫到有需要的同學2021-12-12
Android 連接Wifi和創(chuàng)建Wifi熱點的實例
本篇文章介紹了Android 連接Wifi和創(chuàng)建Wifi熱點,小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧。2016-10-10

