溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android中如何判斷listview是否滑動到頂部和底部

發布時間:2022-04-11 15:47:16 來源:億速云 閱讀:329 作者:iii 欄目:編程語言

這篇文章主要介紹了Android中如何判斷listview是否滑動到頂部和底部的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Android中如何判斷listview是否滑動到頂部和底部文章都會有所收獲,下面我們一起來看看吧。

頂部的判斷,根據listview中的第一個item距離listview頂部的距離是否為0。

底部的判斷,根據listview中的最后一個item的底部與第一個item的頂部的距離是否為整個listview的高度。

上面的兩個想法代碼實現如下:

private void setLiseners() {
    // listview設置滑動監聽
    lsv_new_house.setOnScrollListener(new AbsListView.OnScrollListener() {
      @Override
      public void onScrollStateChanged(AbsListView absListView, int i) {
      }

      @Override
      public void onScroll(AbsListView absListView, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
        if(firstVisibleItem == 0){
          View first_view = lsv_new_house.getChildAt(0);
          if(first_view != null && first_view.getTop() == 0){
//            LogUtils.e("已經滾動到頂部了");
            bl_down = true;// 可以下拉刷新了
          }else {
//            LogUtils.e("還沒到頂部");
            bl_down = false;// 未滑動到頂部不讓下拉刷新
          }
        }

        if(firstVisibleItem + visibleItemCount == totalItemCount){
          View last_view = lsv_new_house.getChildAt(lsv_new_house.getChildCount() - 1);
//          LogUtils.e("height = " + lsv_new_house.getBottom());// 最后一個item的底部與listview第一個item頂部之間的距離
//          int h = lsv_new_house.getHeight();
//          LogUtils.e("h = " + h);
          if(last_view != null && last_view.getBottom() == lsv_new_house.getHeight()){
//            LogUtils.e("已經滾動到最底部了");
            bl_up = true;// 可以上拉加載了
          }else {
//            LogUtils.e("還沒到底部");
            bl_up = false;// 未滑動到底部不讓上拉加載
          }
        }
      }
    });
  }

代碼都是很簡單的,簡單說一下。獲取第一個item的view和最后一個item的view,并進行相應的判斷即可。

而且這樣判斷會更加的精確,因為只要ListView中第一個item出現在屏幕上端,即使只出現一部分,firstVisibleItem 的值也依然為0, onScroll()回調就會發生; 同樣ListView 的最后一個 item 即使只顯示一部分,((firstVisibleItem + visibleItemCount) == totalItemCount) 的值也是等于totalItemCount。

關于“Android中如何判斷listview是否滑動到頂部和底部”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Android中如何判斷listview是否滑動到頂部和底部”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女