java - 如果用户没有一直下拉,如何使Android pulltorefresh弹回?

标签 java android pull-to-refresh

我正在使用 Chris Banes 的(较旧的)pulltorefresh 库。我让它工作,除非用户没有一直下拉(不够刷新) View 不会向上滚动。如果用户一直向下拉,它会滚动。有人知道我做错了什么吗?

答案:我终于弄明白了。您必须在 PullToRefreshBase.java 文件中添加一行。在 Switch 语句的 OnTouchEvent 方法中添加 setheaderScroll(0)。

...
case MotionEvent.ACTION_CANCEL:
        case MotionEvent.ACTION_UP: {
            setHeaderScroll(0); //ADD THIS
            if (mIsBeingDragged) {
                mIsBeingDragged = false;
...

最佳答案

关闭下拉刷新功能,在PullToRefreshListView中添加一个loading footer,并在ListView上设置OnScrollListener,如果ListView 滚动到底部,显示加载页脚,并执行 AsyncTask 加载更多数据

pullToRefreshListView.getRefreshableView().setOnScrollListener(new AbsListView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {

            }

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
                if (++firstVisibleItem + visibleItemCount > totalItemCount) {
                    // show loading footer, execute AsyncTask
                }
            }
        });

关于java - 如果用户没有一直下拉,如何使Android pulltorefresh弹回?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24751466/

相关文章:

java - 项目/包命名约定?

java - JMS 选择器奇怪的行为

javascript - 使用主页按钮时 iOS 上的页面可见性 API 事件

android - 从顶部动画 AppBarLayout

ios - ODRefreshControl 不再工作

android - 使用 PullToRefreshLayout 时显示 Listview 标题

java - 使用 Spring3 mvc 时出现 ajax 问题。返回对象列表时出现 406 错误

java - 如何写入 Netbeans 调试器控制台(使用 Java)?

android - 如何在 android studio 中按下按钮后启动相机?

ios - 如果我的 View Controller 不可滚动,我可以执行 'pull to refresh' 操作吗?