gpt4 book ai didi

java - 如何在Android中使用Comparator立即对带有远程数据的 ListView 进行排序?

转载 作者:行者123 更新时间:2023-12-02 03:37:53 25 4
gpt4 key购买 nike

当我单击按钮对 ListView 进行排序时,它会起作用,但只有当我开始滚动 ListView 时,它才会显示排序顺序。

这是我的数据模型类中的内容:

    public static Comparator<Emplyoyee> sortNameAtoZ = new Comparator<Emplyoyee>() {

@Override
public int compare(Emplyoyee lhs, Emplyoyee rhs) {
String emp1 = lhs.getName();
String emp2 = rhs.getName();

return emp1.compareTo(emp2);
//descending order
//return StudentName2.compareTo(StudentName1);
}};

当用户单击按钮时,我称之为:

Collections.sort(rowdata, EmployeeRowData.sortNameZtoA);
adapter.notifyDataSetChanged();

经过研究并比较不同的来源后,设置与此处相同,但单击按钮后不会立即对 ListView 进行排序。我使用 Volley 将远程数据库中的数据填充到 ListView 中。

最佳答案

重置您的数组列表。

试试这个:

Collections.sort(rowdata, EmployeeRowData.sortNameZtoA);

adapter.setArrayList(rowdata);

adapter.notifyDataSetChanged();

您的适配器

public void setArrayList(ArrayList<Emplyoyee> array){
yourArray =array;
}

关于java - 如何在Android中使用Comparator立即对带有远程数据的 ListView 进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37223380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com