上拉重新整理,下拉載入更多是現在最流行的手勢操作,但是對於初學者來說,在實現上是有一定難度的,網上很多教程講的都過於複雜,對於初學者無法起到引導作用,特此寫本文,幫助安卓新手入門理解此,還有最為重要的一點:本文只幫助你理解,並不是想你成為**搬運工!別被那麼多**嚇到了, 其中很多都是注釋,仔細看注釋對你理解有很大的幫助。
一、事先準備:
實現該功能,最基本的需要兩個東西,乙個是ontouchlistener,乙個是onscrolllistener,必須得理解這兩個東西
1,ontouchlistener:用於監測觸碰事件,當發生手指碰到螢幕時,以及滑動時,需要用到該listener來處理相應操作
2,onscrolllistener:用於監聽listview的滾動事件(不一定是listview,應是支援該監聽的所有控制項),
當滾動到第一行或最後一行時需要的判斷,其中會有三個引數,後面會講解道。
二、開始
1. class testclass extends activity
其次寫兩個自定義類來實現相關介面:
//滾動監聽類
2.1 class myscrolllistener implements onscrolllistenerelse
//判斷是否到了滾動到了最後一行
if (firstvisiableitem + visiableitemcount == totalitemcount && totalitemcount > 0) else
}/**當滾動狀態發生變化時觸發的方法
*scrollstate--發生的變化的狀態,共有:scroll_state_idle(滾動,並且手指已經離開螢幕),scroll_state_fling(手指快速滾動時),scroll_state_touch_scroll(手指滾動,但是手指依然在螢幕上)
*/@override
public void onscrollstatechanged(abslistview arg0, int scrollstate)
}
//觸控監聽類
2.2, class mytouchlistener implements ontouchlistenerelse if(islastrow&&y_dis>0)
break;
case motionevent.action_up:
//當發生up事件時,如果達成條件可觸發事件,即觸發對應事件
if(isfirstrow)else if(islastrow)
listview.setlayoutparams(lp);
break;}}
}最後在listview中設定對應的監聽即可:
3, oncreate()
首先先自定義兩個listener並實現對應的介面,並且在可訪問公共變數的類中設定兩個變數來判斷當前滾動值和狀態:
ajax實現下拉重新整理 上拉載入
上面 是實現的效果。index.html 上拉載入,下拉重新整理 這裡顯示部分資料 這裡顯示部分資料 這裡顯示部分資料 這裡顯示部分資料 上拉載入 底部onscrollmove function else onscrollend function 上拉載入函式,ajax var num 0 var ...
ionic 實現下拉重新整理上拉載入更多
網上例子太多了,官網的文件也很全,不過在這裡闡述下,方便自己查詢,官網速度太慢了,估計是自己網速原因了,小公司傷不起啊。下拉重新整理上拉載入更多,直接來 裡都有說明 view title 活動頁 class padding pulling text 下拉重新整理 on refresh vm.dore...
基於iscroll實現下拉和上拉重新整理
這裡,我基於iscroll5的基礎上,進行了少量的改動源 進而實現了下拉屬性的功能,所以分享在這裡,僅供參考。iscroll外掛程式 官網位址 當前最新的版本是version 5版本,相對於版本4,我個人覺得,版本5變得更具有靈活性,雖然移除了一些特定的事件,特定的對外介面,但是對於使用該外掛程式的...