GestureDetector手势识别的简单使用

来源:互联网 发布:java中可以加互斥锁 编辑:程序博客网 时间:2024/05/02 02:08

GestureDetector可以用在各种view上来达到自己想要的效果

其简单用法

package com.example.gesturedetector;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.GestureDetector;import android.view.MotionEvent;import android.view.View;import android.widget.Button;import android.widget.LinearLayout;import android.widget.Toast;public class MainActivity extends AppCompatActivity {    @butterknife.Bind(R.id.bt_main_1)    Button btMain1;    @butterknife.Bind(R.id.ll_main)    LinearLayout llMain;GestureDetector mGestureDetector;    class MyGestureListener extends GestureDetector.SimpleOnGestureListener{        @Override        public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {            if(e1.getY()-e2.getY()>=50){                Toast.makeText(MainActivity.this, "向上滑动", Toast.LENGTH_SHORT).show();            }            if(e1.getY()-e2.getY()<50){                Toast.makeText(MainActivity.this, "向下滑动", Toast.LENGTH_SHORT).show();            }            return super.onFling(e1, e2, velocityX, velocityY);        }    }    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        butterknife.ButterKnife.bind(this);        mGestureDetector=new GestureDetector(new MyGestureListener());        llMain.setOnTouchListener(new View.OnTouchListener() {            @Override//可以捕获屏幕出发发生的事件            public boolean onTouch(View v, MotionEvent event) {                mGestureDetector.onTouchEvent(event);                return true;            }        });    }}


原创粉丝点击