Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android中自定義ScrollView代碼實例

Android中自定義ScrollView代碼實例

編輯:關於Android編程

Android中的ScrollView其實是很簡陋的,竟然沒有和ListView一樣的可以設置一個OnScrollListener,不過沒有關系,我們可以繼承自ScrollView來自定義一個。廢話不多說,直接上代碼:
復制代碼 代碼如下:
public class ObservableScrollView extends ScrollView {

    public ObservableScrollView(Context context) {
        super(context);
    }

    public ObservableScrollView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

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

    public interface OnScrollChangedListener {
        public void onScrollChanged(int x, int y, int oldX, int oldY);
    }

    private OnScrollChangedListener onScrollChangedListener;

    public void setOnScrollListener(OnScrollChangedListener onScrollChangedListener) {
        this.onScrollChangedListener = onScrollChangedListener;
    }

    @Override
    protected void onScrollChanged(int x, int y, int oldX, int oldY) {
        super.onScrollChanged(x, y, oldX, oldY);
        if (onScrollChangedListener != null) {
            onScrollChangedListener.onScrollChanged(x, y, oldX, oldY);
        }
    }
}

上述代碼很簡單,相信大家都能看得懂,使用的時候只需要調用setOnScrollListener方法就可以了,這裡面有四個參數,最常用的比如你想判斷ScrollView的滑動方向,那麼只需要判斷 y > oldY即為向下滑動,反之向上滑動。除此之外,還可以做點其他有意思的事,比如判斷ScrollView滑動到某個特定位置然後做些動畫之類的,更加有創意的就靠大家自己去思考了。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved