android項目中記錄ListView滾動中止位置與設置顯示位置

在項目中常用到listView控件,當想記錄滾動中止時的記錄,當點擊加載新的數據,從記錄的位置開始顯示的操做怎麼實現尼?分爲以下步驟java

1.記錄位置代碼ide


[java] view plaincopyspa


  1. //聲明記錄中止滾動時候,可見的位置  .net

  2. private int stop_position;  blog

[java] view plaincopyget


  1. @Override  it

  2.     public void onScrollStateChanged(AbsListView view, int scrollState) {  io

  3.         // TODO Auto-generated method stub  ast

  4.         // 判斷是不是最後一行,而且中止滾動  List

  5.         if (isLastRow && scrollState == OnScrollListener.SCROLL_STATE_IDLE) {  

  6.             //獲取可見位置  

  7.             stop_position = lv_categories.getFirstVisiblePosition();  

  8.             // 判斷是不是最後一頁  

  9.             if (pageInfo.getNowPage() != pageInfo.getCountPage()) {  

  10.                 // 查詢下一頁數據  

  11.                 categoryManager.queryObjects(pageInfo.getNowPage() + 1);  

  12.             }  

  13.             // 記得把標識改成false  

  14.             isLastRow = false;  

  15.         }  

  16.   

  17.     }  

  18.   

  19.     @Override  

  20.     public void onScroll(AbsListView view, int firstVisibleItem,  

  21.             int visibleItemCount, int totalItemCount) {  

  22.   

  23.         if ((firstVisibleItem + visibleItemCount) >= totalItemCount) {  

  24.             isLastRow = true;  

  25.         }  

  26.   

  27.     }  




2.從新開始位置


[java] view plaincopy


  1. // 設置listView控件的適配器  

  2. lv_categories.setAdapter(adapter);  

  3. //設置listView開始的可見位置  

  4. lv_categories.setSelection(stop_position);  

相關文章
相關標籤/搜索