zoukankan      html  css  js  c++  java
  • Android 监听ScrollView的滑动

    我们需要监听ScroView的滑动情况,比如滑动了多少距离,是否滑到布局的顶部或者底部。可惜的是SDK并没有相应的方法,不过倒是提供了一个 

     protected void onScrollChanged(int l, int t, int oldl, int oldt) 

    显然这个方法是不能被外界调用的,因此就需要把它暴露出去,解决方式就是写一个接口

    /**
     * Created by 刘楠 on 2016/8/21 0021.17:24
     */
    public interface ScrollViewListener {
    
        void onScrollChanged(ObservableScrollView observableScrollView,int x,int y ,int oldx, int oldy);
    }

    然后重写ScrollView类,给它提供上面写的回调接口

    package com.liu.titlealpha.view;
    
    import android.content.Context;
    import android.util.AttributeSet;
    import android.widget.ScrollView;
    
    /**
     * Created by 刘楠 on 2016/8/21 0021.17:23
     */
    public class ObservableScrollView extends ScrollView {
    
    
        private ScrollViewListener mScrollViewListener=null;
    
        public void setScrollViewListener(ScrollViewListener scrollViewListener) {
            mScrollViewListener = scrollViewListener;
        }
    
        public ObservableScrollView(Context context) {
            super(context);
        }
    
        public ObservableScrollView(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        public ObservableScrollView(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
        }
    
        @Override
        protected void onScrollChanged(int x, int y, int oldx, int oldy) {
            super.onScrollChanged(x, y, oldx, oldy);
            if (mScrollViewListener != null) {
                mScrollViewListener.onScrollChanged(this, x, y, oldx, oldy);
            }
        }
    }

    布局时,用重写的这个ScrollView

  • 相关阅读:
    ng的ngModel用来处理表单操作
    ionic改tab文字和icon图片的颜色
    ionic安装遇到的一些问题
    ionic运行测试
    安卓sdk安装教程
    ionic教程
    ng 构建
    ng websocket
    ng依赖注入
    Python: 定时器(Timer)简单实现
  • 原文地址:https://www.cnblogs.com/liunanjava/p/5793151.html
Copyright © 2011-2022 走看看