【问题标题】:How can I run a for loop through a recycler view in android?如何通过 android 中的回收器视图运行 for 循环?
【发布时间】:2021-05-27 01:49:06
【问题描述】:

我的应用程序中有一个回收器视图,我不想执行 onclick 侦听器,而是单击回收器视图之外的一个按钮,该按钮指示应用程序遍历我的回收器视图中的所有项目并执行操作项目。我该怎么做?

【问题讨论】:

    标签: java android android-recyclerview android-viewholder


    【解决方案1】:

    您可以在适配器中添加一个公共方法来获取列表

    public List<Model> getList(){
        return modelList;
    }
    

    在任何地方获取列表

    List<Model> listToModify = adapter.getList();
    

    循环遍历列表并修改,然后设置到适配器或调用notifyDataSetChanged();

    【讨论】:

    • 要理解的重要部分是,recyclerview 是由适配器管理的,所以对适配器进行更改,而不是对回收器进行更改
    • 我使用了这个并且它工作了,但是现在当我使用搜索栏搜索我的 recyclerview 中的项目时 - 由于它是动态搜索,recycler view 中项目的位置在搜索时会发生变化,因此我为 for 循环中的特定项目编写的逻辑搞砸了。我该如何解决?
    • 当我重新加载活动时,回收器视图工作正常,但是,当我运行 for 循环时,它会弄乱活动,直到我刷新。
    • @a_local_nobody 感谢分享,明白了:) 我也在更改后通知适配器,但它的行为不符合逻辑,你能帮忙吗?
    • 最好发布一个新问题
    猜你喜欢
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 2019-10-29
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 2020-03-01
    相关资源
    最近更新 更多