国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android通過滑動實現(xiàn)Activity跳轉(zhuǎn)(手勢識別器應用)

2019-10-23 18:28:00
字體:
供稿:網(wǎng)友

通過手勢識別器實現(xiàn)界面的轉(zhuǎn)跳,具體內(nèi)容如下

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)界面轉(zhuǎn)跳      }      if ((endX - startX) > 50 && Math.abs(startY - endY) <200) {        //在這里通過Intent實現(xiàn)界面轉(zhuǎn)跳      }//返回值是重點:如果返回值是true則動作可以執(zhí)行,如果是flase動作將無法執(zhí)行      return true;    }  }  @Override  public boolean onTouchEvent(MotionEvent event) {    gue.onTouchEvent(event);    return super.onTouchEvent(event);  }

 

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到Android開發(fā)頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 习水县| 朝阳市| 雷山县| 灌云县| 扶风县| 伊宁县| 濮阳县| 屏东县| 长乐市| 商城县| 屯门区| 碌曲县| 普兰县| 沙田区| 柘城县| 镇宁| 衢州市| 思南县| 卢湾区| 新郑市| 宝清县| 沁源县| 赫章县| 迭部县| 顺义区| 崇仁县| 道孚县| 卓资县| 靖安县| 烟台市| 许昌市| 涿鹿县| 康保县| 英超| 元谋县| 潜山县| 凤翔县| 弥渡县| 白玉县| 巩留县| 宁武县|