向我的RecycleView添加无限滚动

范围

我试图将无限滚动添加到我的RecyclerView中。我正在从tmdb获取前20部电影,当我向下滚动时,我希望它们再次重新加载。

现在我遇到了这些问题:

1.找不到适合getActivity()的方法

2.找不到符号变量spanCount。

有人可以帮我吗?GitHub仓库:https : //github.com/adnxy/MyMovieApp

我的代码如下:

 mRecyclerView.setLayoutManager(new GridLayoutManager(this, 2));
    mAdapter = new MoviesAdapter(MainActivity.this);
    mRecyclerView.setAdapter(mAdapter);

    final GridLayoutManager mLayoutManager;
    mLayoutManager = new GridLayoutManager(getActivity(), spanCount);
    mRecyclerView.setLayoutManager(mLayoutManager);

和无限滚动:

mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener(){

        @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
            super.onScrolled(recyclerView, dx, dy);

            visibleItemCount = mRecyclerView.getChildCount();
            totalItemCount = mLayoutManager.getItemCount();
            firstVisibleItem = mLayoutManager.findFirstVisibleItemPosition();

            if (loading) {
                if (totalItemCount > previousTotal) {
                    loading = false;
                    previousTotal = totalItemCount;
                }
            }
            if (!loading && (totalItemCount - visibleItemCount)
                    <= (firstVisibleItem + visibleThreshold)) {
                // End has been reached

                Log.i("Yaeye!", "end called");

                // Do something

                loading = true;
            }
        }
    });
Keyur

创建三个变量

int pastVisiblesItems, visibleItemCount, totalItemCount;

之后,像这样创建LayoutManager

mLayoutManager = new LinearLayoutManager(getActivity());
mRecyclerView.setLayoutManager(mLayoutManager);

最后放在Listner这样的

mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
        @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
            super.onScrolled(recyclerView, dx, dy);
            if (dy > 0) //check for scroll down
            {
                visibleItemCount = mLayoutManager.getChildCount();
                totalItemCount = mLayoutManager.getItemCount();
                pastVisiblesItems = mLayoutManager.findFirstVisibleItemPosition();


                    if ((visibleItemCount + pastVisiblesItems) >= totalItemCount) {
                        Log.w("RecyclerviewListner","Last Item Detected");
                    }

            }
        }
    });

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何向我的内容添加垂直滚动

来自分类Dev

向我的班级添加功能

来自分类Dev

向我的班级添加功能

来自分类Dev

向我的函数添加 If 语句

来自分类Dev

我的html结构的无限滚动

来自分类Dev

如何向我的分页添加格式

来自分类Dev

向我想要的任何网页添加标题

来自分类Dev

尝试向我的angularjs应用添加服务

来自分类Dev

如何向我的SKSpriteNode添加爆炸?

来自分类Dev

向我的虚拟主机添加别名

来自分类Dev

如何向我的Ionic项目添加插件?

来自分类Dev

如何向我的 android 项目添加规则?

来自分类Dev

如何向我的 URL 添加查询?

来自分类Dev

无限滚动并破坏我的其他JS

来自分类Dev

我们如何使它无限滚动?

来自分类Dev

如何向我的before_action添加异常处理

来自分类Dev

strncpy向我的char数组添加额外的字符

来自分类Dev

向我的Rails应用程序添加电子邮件

来自分类Dev

如何在Android Studio上向我的项目添加库?

来自分类Dev

无法在taskwarrior中向我的任务添加项目或标签

来自分类Dev

如何在流星中向我的集合添加osm坐标

来自分类Dev

无法向我的角度项目添加分页

来自分类Dev

Django:如何向我的管理站点添加链接

来自分类Dev

如何在wxpython中向我的应用添加图标?

来自分类Dev

如何在Flutter中向我的ListTile添加电话操作

来自分类Dev

为什么R向我的图表添加一列?

来自分类Dev

如何从rss提要向我的XML文件添加空格

来自分类Dev

如何向我的画布应用添加工具

来自分类Dev

自制如何向我的环境中添加东西?