【问题标题】:Sorting text in recyclerview with custom layout使用自定义布局对 recyclerview 中的文本进行排序
【发布时间】:2016-06-16 18:09:08
【问题描述】:

我想按字母顺序对我的 RecylerView 进行排序。我使用带有图像和 texbox 的自定义布局。我想根据文本框中的文本按字母顺序对列表进行排序。

我的图像存储在可绘制文件夹中,并通过数组的引用添加到 recyclerview 中。

int[] icons ={R.drawable.john,
            R.drawable.andrew,}
string[]title={"john","andrew"}

我如何对文本进行排序,以便每一行都按字母顺序排序。

我可以用

对标题进行排序
List<String> sortedName = Arrays.asList(title);
        Collections.sort(sortedName);
        title =(String[])sortedName.toArray()

但是,这仅对标题进行了排序,而图像并未根据文本进行排序。 有人可以帮我对每一行进行排序吗 谢谢

【问题讨论】:

    标签: android sorting android-recyclerview


    【解决方案1】:

    我认为你应该创建一个包含图标和标题的对象,例如

    public class Entry implements Comparable<Entry>{
      private String title;
      private int icon;
    
      public Entry(String title, int icon){
       this.title = title;
       this.icon = icon;
      }
    
      public int compareTo(Entry new_entry) {
         return title.compareTo(new_entry.getTitle());
      }
      public String getTitle(){
        return this.title;
      }
      public int getIcon(){
        return this.icon;
      }
    }
    

    通过这种方式,您可以创建一个 Entry 对象数组,并且仍然使用 Collections.sort 对条目进行排序。

    你应该稍微修改一下recyclerview的适配器,工作就完成了

    【讨论】:

    • 嗨,我是 recyclerview 的新手,所以你必须为我分解它。我在哪里添加这个类?我是否将其添加到我的适配器?
    • 你应该在你创建图标和标题变量的地方使用这个类
    猜你喜欢
    • 2021-09-28
    • 1970-01-01
    • 2010-12-21
    • 2014-02-03
    • 1970-01-01
    • 2010-11-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多