欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android中ScrollView實現(xiàn)滑動距離監(jiān)聽器的方法

 更新時間:2016年10月10日 14:15:04   投稿:daisy  
ScrollView相信對每位Android開發(fā)者們來說都不陌生,所以這篇文章給大家主要介紹了Android中ScrollView實現(xiàn)滑動距離監(jiān)聽器的方法,有需要的朋友們可以參考借鑒,下面來一起看看吧。

前言

眾所周知ScrollView是我們經(jīng)常使用的一個UI控件,也許你在使用ScrollView的過程中會發(fā)現(xiàn),當(dāng)你想監(jiān)聽ScrollView滑動的距離時卻沒有合適的監(jiān)聽器!當(dāng)然在API 23中有setOnScrollChangeListener(View.OnScrollChangeListener l)可以使用,但是并不兼容低版本的API。那怎么辦呢?只好重寫ScrollView來實現(xiàn)對滑動距離的監(jiān)聽了。

話不多說,直接上代碼:

public class MyScrollView extends ScrollView {

 private OnScrollListener listener;

 /**
 * 設(shè)置滑動距離監(jiān)聽器
 */
 public void setOnScrollListener(OnScrollListener listener) {
  this.listener = listener;
 }

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

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

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

 // 滑動距離監(jiān)聽器
 public interface OnScrollListener{

 /**
 * 在滑動的時候調(diào)用,scrollY為已滑動的距離
 */
  void onScroll(int scrollY);
 }

 @Override
 public void computeScroll() {
  super.computeScroll();
  if(listener!=null){
   listener.onScroll(getScrollY());
  }
 }
}

上面重寫的MyScrollView是在computeScroll()實現(xiàn)監(jiān)聽,因為ScrollView內(nèi)部是通過Scroller來實現(xiàn)的,當(dāng)滑動的時候會去調(diào)用computeScroll()方法,從而達到監(jiān)聽的效果。

當(dāng)然還有另一種方法,就是在onScrollChanged(int l, int t, int oldl, int oldt)去監(jiān)聽,最后的效果是一樣的:

public class MyScrollView extends ScrollView {

 private OnScrollListener listener;

 public void setOnScrollListener(OnScrollListener listener) {
  this.listener = listener;
 }

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

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

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

 public interface OnScrollListener{
  void onScroll(int scrollY);
 }

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

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望能對各位Android開發(fā)者們有所幫助,如果有疑問大家可以留言交流。

相關(guān)文章

  • Android接收和發(fā)送短信處理

    Android接收和發(fā)送短信處理

    這篇文章主要介紹了Android接收和發(fā)送短信處理的相關(guān)資料,具有一定的參考價值,需要的朋友可以參考下
    2016-01-01
  • android 跳轉(zhuǎn)進市場的實現(xiàn)代碼

    android 跳轉(zhuǎn)進市場的實現(xiàn)代碼

    本篇文章是對android中跳轉(zhuǎn)進市場的實現(xiàn)代碼進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • Kotlin文件讀寫與SharedPreferences存儲功能實現(xiàn)方法

    Kotlin文件讀寫與SharedPreferences存儲功能實現(xiàn)方法

    SharedPreferences是安卓平臺上一個輕量級的存儲類,用來保存應(yīng)用的一些常用配置,比如Activity狀態(tài),Activity暫停時,將此activity的狀態(tài)保存到SharedPereferences中;當(dāng)Activity重載,系統(tǒng)回調(diào)方法onSaveInstanceState時,再從SharedPreferences中將值取出
    2022-12-12
  • android選擇視頻文件上傳到后臺服務(wù)器

    android選擇視頻文件上傳到后臺服務(wù)器

    這篇文章主要介紹了android選擇視頻文件上傳到后臺服務(wù)器的相關(guān)資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • Android 密碼 顯示與隱藏功能實例

    Android 密碼 顯示與隱藏功能實例

    這篇文章主要介紹了Android 密碼 顯示與隱藏功能實例,需要的朋友可以參考下
    2017-06-06
  • android之datepicker控件的用法

    android之datepicker控件的用法

    下面小編就為大家?guī)硪黄猘ndroid之datepicker控件的用法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • Android 中ViewPager中使用WebView的注意事項

    Android 中ViewPager中使用WebView的注意事項

    這篇文章主要介紹了Android 中ViewPager中使用WebView的注意事項的相關(guān)資料,希望通過本文大家在使用過程中遇到這樣的問題解決,需要的朋友可以參考下
    2017-09-09
  • Android中volley封裝實踐記錄(二)

    Android中volley封裝實踐記錄(二)

    這篇文章主要給大家介紹了關(guān)于Android中volley封裝的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • Android模擬器最新檢測方法詳解

    Android模擬器最新檢測方法詳解

    這篇文章主要介紹了Android模擬器的檢測方法,在Android開發(fā)過程中,防作弊一直是老生常談的問題,而模擬器的檢測往往是防作弊中的重要一環(huán),接下來我們來講解有關(guān)于模擬器的檢測方法,需要的朋友可以參考下
    2024-02-02
  • Android調(diào)用google地圖生成路線圖實現(xiàn)代碼

    Android調(diào)用google地圖生成路線圖實現(xiàn)代碼

    Android程序調(diào)用本機google地圖并且傳遞起始和終點位置生成路線圖,有需要的朋有可以參考下,或許本文對你有所幫助,好了話不多說,看代碼
    2013-02-02

最新評論