美文网首页
Android自定义View - ScrollView实时获取滚

Android自定义View - ScrollView实时获取滚

作者: 谷鸽不爱吃稻谷 | 来源:发表于2017-01-02 09:25 被阅读752次

一、环境

  1. 安卓系统:4.2
  2. 操作系统:Win 8.1
  3. 工具:Android Studio

二、自定义 ScrollView

ScrollView 里有一个 onScrollChange 方法,滚动的时候会调用,但它是 protected 权限,所以不能调用,需要重写

public class MyScrollView extends ScrollView {    
        private OnScrollListener onScrollListener;    
        private int scrollY;    

        public MyScrollView(Context context) {        
            this(context, null);    
        }    
    
        public MyScrollView(Context context, AttributeSet attrs) {        
            this(context, attrs, 0);    
        }    

        public MyScrollView(Context context, AttributeSet attrs, int defStyle) {        
            super(context, attrs, defStyle);    
        }    

        /**     
          * 设置滚动接口     
          * @param onScrollListener     
          */    
        public void setOnScrollListener(OnScrollListener onScrollListener) {        
            this.onScrollListener = onScrollListener;    
        }    

        @Override    
        protected void onScrollChanged(int l, int t, int oldl, int oldt) {        
            super.onScrollChanged(l, t, oldl, oldt);        
            scrollY = getScrollY();        
            if (onScrollListener != null) {            
                onScrollListener.onScroll(scrollY);        
            }    
        }    

        public interface OnScrollListener{        
            /**         
              * 回调方法, 返回MyScrollView滑动的Y方向距离         
              * @param scrollY            、         
              */        
            public void onScroll(int scrollY);    
        }
}

相关文章

网友评论

      本文标题:Android自定义View - ScrollView实时获取滚

      本文链接:https://www.haomeiwen.com/subject/xdkwvttx.html