zoukankan      html  css  js  c++  java
  • android Gallery滑动不流畅的解决

    import android.content.Context;
    import android.util.AttributeSet;
    import android.view.KeyEvent;
    import android.view.MotionEvent;
    import android.widget.Gallery;
    
    @SuppressWarnings("deprecation")
    public class MyGallery extends Gallery {
        
        public MyGallery(Context context, AttributeSet attrs, int defStyle) {
            super(context, attrs, defStyle);
            // TODO Auto-generated constructor stub
        }
        
        public MyGallery(Context context, AttributeSet attrs) {
            super(context, attrs);
            // TODO Auto-generated constructor stub
        }
        
        public MyGallery(Context context) {
            super(context);
            // TODO Auto-generated constructor stub
        }
        
        // 减慢滑动速度
        private boolean isScrollingLeft(MotionEvent e1, MotionEvent e2) {
            return e2.getX() > e1.getX();
        }
        
        @Override
        public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
            // TODO Auto-generated method stub
            // return super.onFling(e1, e2, 0, velocityY);//方法一:只去除翻页惯性
            // return false;//方法二:只去除翻页惯性 注:没有被注释掉的代码实现了开始说的2种效果。
            int kEvent;
            if (isScrollingLeft(e1, e2)) {
                // Check if scrolling left
                kEvent = KeyEvent.KEYCODE_DPAD_LEFT;
            }
            else {
                // Otherwise scrolling right
                kEvent = KeyEvent.KEYCODE_DPAD_RIGHT;
            }
            onKeyDown(kEvent, null);
            return true;
        }
    }

    重写Gallery的几个方法就可以解决了

  • 相关阅读:
    ubuntu 更新软件
    如何在linux(lubuntu)下搭建C/C++开发环境
    Linux下如何查看版本信息
    知识点笔记
    Require.js中使用jQuery 插件
    async中常用总结
    node.js在遇到“循环+异步”时的注意事项
    前端性能优化
    生产/消费者问题
    线程与内存
  • 原文地址:https://www.cnblogs.com/crazywenza/p/3341279.html
Copyright © 2011-2022 走看看