a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 系統 > Android > 正文

封裝的android監聽手指左右滑動屏幕的事件類分享

2020-04-11 11:33:25
字體:
來源:轉載
供稿:網友

左右滑動是智能手機最常用的動作,在此簡單的封裝了一下,以后直接拿來用就可以了。

簡單的只需要幾行就可以了,下面那個類是封裝好了的。

package com.example.test;import android.os.Bundle;import android.app.Activity;import android.content.Context;import android.util.Log;import android.widget.RelativeLayout;public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);//這里的xml是一個空白的layout  //需要監聽左右滑動事件的view RelativeLayout view = (RelativeLayout) this.findViewById(R.id.layout);  //setLongClickable是必須的 view.setLongClickable(true); view.setOnTouchListener(new MyGestureListener(this)); }  /** * 繼承GestureListener,重寫left和right方法 */ private class MyGestureListener extends GestureListener { public MyGestureListener(Context context) {  super(context); } @Override public boolean left() {  Log.e("test", "向左滑");  return super.left(); } @Override public boolean right() {  Log.e("test", "向右滑");  return super.right(); } }}


package com.example.test;import android.content.Context;import android.view.GestureDetector.SimpleOnGestureListener;import android.view.GestureDetector;import android.view.View;import android.view.View.OnTouchListener;import android.view.MotionEvent;/** * 實現監聽左右滑動的事件,哪個view需要的時候直接setOnTouchListener就可以用了 * @author LinZhiquan * */public class GestureListener extends SimpleOnGestureListener implements OnTouchListener { /** 左右滑動的最短距離 */ private int distance = 100; /** 左右滑動的最大速度 */ private int velocity = 200;  private GestureDetector gestureDetector;  public GestureListener(Context context) { super(); gestureDetector = new GestureDetector(context, this); } /** * 向左滑的時候調用的方法,子類應該重寫 * @return */ public boolean left() { return false; }  /** * 向右滑的時候調用的方法,子類應該重寫 * @return */ public boolean right() { return false; }  @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,  float velocityY) { // TODO Auto-generated method stub // e1:第1個ACTION_DOWN MotionEvent // e2:最后一個ACTION_MOVE MotionEvent // velocityX:X軸上的移動速度(像素/秒) // velocityY:Y軸上的移動速度(像素/秒) // 向左滑 if (e1.getX() - e2.getX() > distance  && Math.abs(velocityX) > velocity) {  left(); } // 向右滑 if (e2.getX() - e1.getX() > distance  && Math.abs(velocityX) > velocity) {  right(); } return false; } @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub gestureDetector.onTouchEvent(event); return false; } public int getDistance() { return distance; } public void setDistance(int distance) { this.distance = distance; } public int getVelocity() { return velocity; } public void setVelocity(int velocity) { this.velocity = velocity; } public GestureDetector getGestureDetector() { return gestureDetector; } public void setGestureDetector(GestureDetector gestureDetector) { this.gestureDetector = gestureDetector; }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 午夜精品一区二区三区在线 | 中文字幕一区二区三区乱码图片 | 日韩欧美一二三区 | 99re热精品视频 | 亚洲视频在线观看免费 | 国产成人精品视频在线观看 | 狠狠躁日日躁夜夜躁东南亚 | 青青久视频 | 精品91在线 | 国产精品毛片一区二区三区 | 五月婷婷中文 | h亚洲视频 | 日视频 | sis色中色| av免费看在线 | 国产精品久久久久久久久久99 | 久久中文字幕一区 | 看全黄大色黄大片老人做 | 全黄大全大色全免费大片 | 亚洲精品v日韩精品 | 色88久久久久高潮综合影院 | 国产免费一区 | 国产精自产拍久久久久久 | 黄色毛片免费看 | 国产精品视频在线观看 | 国产精品污www在线观看 | 男女网站视频 | 精品国产一区二区三区久久久久久 | 欧美日韩一级二级三级 | 精品中文字幕一区二区三区 | 国产激情午夜 | 亚洲视频在线观看免费 | 国产成人一区二区三区 | 精品久久一区 | 人人草人人看 | 国产精品11 | 久久久大 | 欧美精品日韩 | 日韩成人在线视频 | 羞羞视频在线观看视频 | 伊人精品视频在线观看 |