Android自定義View - ScrollView實(shí)時(shí)獲取滾動(dòng)距離

一、環(huán)境

  1. 安卓系統(tǒng):4.2
  2. 操作系統(tǒng):Win 8.1
  3. 工具:Android Studio

二、自定義 ScrollView

ScrollView 里有一個(gè) onScrollChange 方法,滾動(dòng)的時(shí)候會(huì)調(diào)用,但它是 protected 權(quán)限,所以不能調(diào)用,需要重寫

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);    
        }    

        /**     
          * 設(shè)置滾動(dòng)接口     
          * @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{        
            /**         
              * 回調(diào)方法, 返回MyScrollView滑動(dòng)的Y方向距離         
              * @param scrollY            、         
              */        
            public void onScroll(int scrollY);    
        }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,111評(píng)論 25 709
  • 我和女朋友吵架了,吵得很兇,砸了各種東西,看來這次是無可挽回,非分手不可了…… 然后我醒了,舒了一口氣——還好是場...
    漫漫尋閱讀 265評(píng)論 1 5
  • 我有一個(gè)叫無憂的小閨女。。。 寶貝上幼兒園的第一天。。。時(shí)光飛逝 喝咖啡的時(shí)候?qū)氊愖覍?duì)面玩吸管,于是剩下的咖啡就...
    無憂mama閱讀 295評(píng)論 0 0
  • 編程題(1)(1/1 分?jǐn)?shù)) 創(chuàng)建一個(gè)簡單的表示矩形的Rectangle類,滿足以下條件:1、定義兩個(gè)成員變量he...
    qratosone閱讀 913評(píng)論 0 0
  • 如何建立一個(gè)ajax###
    種諤閱讀 414評(píng)論 0 3

友情鏈接更多精彩內(nèi)容