学习下拉刷新核心代码

来源:互联网 发布:天谕炎天女捏脸数据图 编辑:程序博客网 时间:2024/06/07 00:53
PullToRefresh.jar
<pre name="code" class="java">@Overridepublic final boolean onInterceptTouchEvent(MotionEvent event) {。。。case MotionEvent.ACTION_DOWN: {/*** * isReadyForPull()改函数判断当前pull动作是否需要刷新列表 *  主要做的事情是:判断listview的第一天item是否可见 *  */if (isReadyForPull()) {mLastMotionY = mInitialMotionY = event.getY();mLastMotionX = mInitialMotionX = event.getX();mIsBeingDragged = false;}break;。。。}return mIsBeingDragged;}@Overridepublic final boolean onTouchEvent(MotionEvent event) {switch (event.getAction()) {case MotionEvent.ACTION_MOVE: {if (mIsBeingDragged) {mLastMotionY = event.getY();mLastMotionX = event.getX();/*** * pullEvent();改函数描述了拖拽过程中,整个容器向下scroll的过程 * 里面调用了两个重要的函数:scroll和setState */pullEvent();}@Overridepublic final boolean onTouchEvent(MotionEvent event) {case MotionEvent.ACTION_UP: {if (mIsBeingDragged) {mIsBeingDragged = false;/*** * RELEASE_TO_REFRESH拖拽放开的意思 * up事件的时候,真正执行数据的加载 */if (mState == State.RELEASE_TO_REFRESH&& (null != mOnRefreshListener || null != mOnRefreshListener2)) {setState(State.REFRESHING, true);return true;}}


                                             
0 0
原创粉丝点击