zoukankan      html  css  js  c++  java
  • 简单手势_GestureDetector

    实现简单的手势比如横竖滑动可以用GestureDetector实现。

    分析可以确定,

    1、首先要写入onTouchListener事件获得motionEvent对象

    2、创建一个GestureDetector

    3、GestureDetector会转发motionEvent对象至Listener

    4、listener对象做合适的处理。有SimpleOnGestureListener已经做了处理

    show code

    public class MainActivity extends AppCompatActivity {
    
        ImageView image;
    
        GestureDetector mGestureDetector;
    
        class mGestureListener extends GestureDetector.SimpleOnGestureListener {
            @Override
            public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
                if (e1.getX() - e2.getX() > 0) {
                    Toast.makeText(MainActivity.this, "从右往左", Toast.LENGTH_SHORT).show();
                } else {
                    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);
            image = (ImageView) findViewById(R.id.image);
    
            mGestureDetector = new GestureDetector(new mGestureListener());//实例化对象,把listener实现类传入进去,这样就能建立转发的连接
    
            image.setOnTouchListener(new View.OnTouchListener() {
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    mGestureDetector.onTouchEvent(event);//GestureDetector转发对象到listener
                    return true;
                }
            });
    
        }
    }
    

     另外mGestureDetector = new GestureDetector(new mGestureListener());已经过时了,可以用替代方法:

     mGestureDetector = new GestureDetector(this, this); // 注意前一个this代表的是一个Context,后一个this代表的是一个OnGestureListener。

  • 相关阅读:
    Model、ModelMap和ModelAndView的使用详解
    maven的pom.xml配置json依赖
    int和Integer的区别
    SSM 视频
    2018-1-25 PHP数组
    2018-1-25 PHP函数方法
    2018-1-22 PHP 变量和常量
    2018-1-21 复习
    2018-1-18 如何用html和css实现div的缓慢移动效果
    2018-1-17 js弹出div登录窗口
  • 原文地址:https://www.cnblogs.com/lyxin/p/5771427.html
Copyright © 2011-2022 走看看