Android通過滑動實現(xiàn)Activity跳轉(手勢識別器應用)
通過手勢識別器實現(xiàn)界面的轉跳,具體內容如下
1、創(chuàng)建 GestureDetector對象
2、創(chuàng)建新類繼承SimpleOnGestureListener類(創(chuàng)建 GestureDetecto需要的參數(shù))
3、重寫SimpleOnGestureListener中的OnFling()方法。(滑動手勢監(jiān)聽)
4、重寫界面的OntouchEvent方法
5、通過 GestureDetector對象的onTouchEvent()添加事件
代碼如下:
public abstract class BaseActivity extends AppCompatActivity {
private GestureDetector gue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_base);
//這里的第一個參數(shù)是上下文,第二個是手勢監(jiān)聽器
gue = new GestureDetector(this, new MyGestureListener());
}
class MyGestureListener extends GestureDetector.SimpleOnGestureListener {
//onFling方法的第一個參數(shù)是 手指按下的位置, 第二個參數(shù)是 手指松開的位置,第三個參數(shù)是手指的速度
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
float startX = e1.getX();//通過e1.getX()獲得手指按下位置的橫坐標
float endX = e2.getX();//通過e2.getX()獲得手指松開位置的橫坐標
float startY = e1.getY();//通過e1.getY()獲得手指按下位置的縱坐標
float endY = e2.getY();//通過e2.getY()獲得手指松開的縱坐標
if ((startX - endX) > 50 && Math.abs(startY - endY) < 200) {
//(startX - endX) > 50 是手指從按下到松開的橫坐標距離大于50
// Math.abs(startY - endY) < 200 是手指從按下到松開的縱坐標的差的絕對值
//在這里通過Intent實現(xiàn)界面轉跳
}
if ((endX - startX) > 50 && Math.abs(startY - endY) <200) {
//在這里通過Intent實現(xiàn)界面轉跳
}
//返回值是重點:如果返回值是true則動作可以執(zhí)行,如果是flase動作將無法執(zhí)行
return true;
}
}
@Override
public boolean onTouchEvent(MotionEvent event) {
gue.onTouchEvent(event);
return super.onTouchEvent(event);
}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Android用過TextView實現(xiàn)跑馬燈效果的示例
本篇文章主要介紹了Android用過TextView實現(xiàn)跑馬燈效果的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-08-08
Android Caused by: java.lang.ClassNotFoundException解決辦法
這篇文章主要介紹了Android Caused by: java.lang.ClassNotFoundException解決辦法的相關資料,需要的朋友可以參考下2017-03-03
Android穩(wěn)定性:可遠程配置化的Looper兜底框架
這篇文章主要為大家介紹了Android穩(wěn)定性可遠程配置化的Looper兜底框架實例實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02
Android中Listview點擊item不變顏色及設置listselector 無效的解決方案
這篇文章主要介紹了Android中Listview點擊item不變顏色及設置listselector 無效的原因及解決方案,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-09-09
Android開發(fā)實現(xiàn)刪除聯(lián)系人通話記錄的方法
這篇文章主要介紹了Android開發(fā)實現(xiàn)刪除聯(lián)系人通話記錄的方法,較為詳細的分析了Android刪除通話記錄的原理、步驟與相關實現(xiàn)技巧,需要的朋友可以參考下2016-10-10
Android實現(xiàn)的狀態(tài)欄定制和修改方法
這篇文章主要介紹了Android實現(xiàn)的狀態(tài)欄定制和修改方法,涉及Android針對狀態(tài)欄屬性設置的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10

