Android下拉刷新:开始时显示加载页脚

4

我正在使用旧版的Android PullToRefresh 库。它可以在overscroll时正常触发加载。

然而,我想要在进入活动时显示加载页脚视图。我尝试了很多次,但仍然找不到正确的方法。

有没有人可以帮我解决这个问题?


尝试将其设置为延迟300-500毫秒后显示页脚,有时它没有足够的时间来初始化。 - Eddy
谢谢!真的有效!请发表一个回答,我可以接受它。 - Robin
2个回答

13

尝试将它设置为延迟300-500毫秒显示页脚,有时初始化所需的时间不足

new Handler().postDelayed(new Runnable() {

        @Override
        public void run() {
            mPullRefreshGridView.setRefreshing(true);
        }
    }, 500);

这对我解决了问题。


谢谢,它真的有效,我甚至尝试了与发布一个零延迟的可运行文件类似的方法,但没有效果。这是一个奇怪的错误。 - Robin
我知道我也遇到了这个问题 :) - Eddy
初始化完成后没有事件吗? - David Fischer
不要使用过时的视图,尝试使用support.v4库中的新视图SwipeToRefreshLayout。 - Eddy

6

设置PullToRefreshListView的模式:

<com.handmark.pulltorefresh.library.PullToRefreshListView
ptr:ptrMode="pullFromEnd"
ptr:ptrAnimationStyle="rotate"
/>

调用

getRefreshableListView().setRefreshing();

其中getRefreshableListView()是您的方法,用于查找实际的PullToRefreshListView。在初始加载数据后,请不要忘记调用该方法。

getRefreshableListView().onRefreshComplete();

如果setRefreshing()无效,尝试使用postDelayed():
getRefreshableListView().postDelayed(new Runnable() { getRefreshableListView().setRefreshing();}, 200);

我已经在我的Activity的onCreate()中调用了mPullRefreshGridView.setRefreshing();,但是不起作用。 - Robin
谢谢,您的声誉会因此提高。 - Robin
抱歉,Eddy比你更早地给出了答案。 - Robin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接