Code Bye

android网易客户端触发下拉刷新

 

网易客户端那种滑动到一个新的viewpager如何自动触发下拉刷新,而不是手动下拉去触发的。现在有个需求要做成那样的。

10分
当你滑动到那个新的viewPager时,这段代码可以调用ListView那个下拉刷新啊。
引用 1 楼 u010331848 的回复:

当你滑动到那个新的viewPager时,这段代码可以调用ListView那个下拉刷新啊。

那一页我的需求不是用ListView,是需要一个ScrollView,我重写ScrollView后,可以实现下拉刷新,如何每次滑到这个界面,就能触发那个下拉刷新的动画

5分
https://github.com/chrisbanes/Android-PullToRefresh
5分
https://github.com/chrisbanes/Android-PullToRefresh  有你想要的
引用 4 楼 freexiaoyu 的回复:

https://github.com/chrisbanes/Android-PullToRefresh  有你想要的

这个我了,这个里面listview是可以实现我说的那个的,但是srollview没有实现

我稍微改了一下,可以用的,添加了下面的代码
//进入页面的时候调用
public void update()
{

mScroller.startScroll(0, 0, 0, 120, 500);
mHeaderView.setState(XListViewHeader.STATE_REFRESHING);
invokeOnScrolling();
setSelection(0);
invalidate();
mEnablePullRefresh = false;
mPullRefreshing = true;
}
//数据请求完成了调用
public void updateBack()
{
mScroller.startScroll(0, 0, 0, -120, 500);
mHeaderView.setState(XListViewHeader.STATE_NORMAL);
invokeOnScrolling();
setSelection(0);
invalidate();
mEnablePullRefresh = true;
mPullRefreshing = false;
}
测试了是可以的,你测试看看,我用的是XListView,就三个文件、

//下面是我模拟数据请求的
public void delayRefresh(final String id)
{

final Handler handler = new Handler()
{

@Override
public void handleMessage(Message msg)
{
testData(id);
mXListView.update();
mXListView.mListViewListener.onRefresh();
adaf();
super.handleMessage(msg);
}

};
Timer timer = new Timer();
TimerTask tt = new TimerTask()
{

@Override
public void run()
{
Message msg = new Message();
handler.sendMessage(msg);

}
};
timer.schedule(tt, 500);
}

private void adaf()
{
final Handler handler = new Handler()
{

@Override
public void handleMessage(Message msg)
{
mXListView.updateBack();
super.handleMessage(msg);
}

};
Timer timer = new Timer();
TimerTask tt = new TimerTask()
{

@Override
public void run()
{
Message msg = new Message();
handler.sendMessage(msg);

}
};
timer.schedule(tt, 1500);
}

我试了这段代码  但是下拉刷新效果没有看到 你那里有没有完整demo

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明android网易客户端触发下拉刷新