如何在Android中按升序排列我的列表

时间:2012-09-14 06:26:14

标签: android list arraylist adapter

我想按升序列出我的列表,我该如何务实地做。我试过但没有成功。

CODE:

PhonebookAdapter adapter; // My Phonebook Adapter Class
final List<Phonebook> listOfPhonebook = new ArrayList<Phonebook>();
...
...
adapter = new PhonebookAdapter(this, listOfPhonebook);
list.setAdapter(adapter);

2 个答案:

答案 0 :(得分:2)

尝试使用Collections.sort(list);您可能需要import java.util.Collections;

要使用自定义属性进行排序,您必须实现Comparator示例:

public class CustomComparator implements Comparator<Phonebook> {
   @Override
   public int compare(Phonebook p1, Phonebook p2) {
      return p1.name.compareTo(p2.name);
   }
}

对于排序,你必须:

Collections.sort(list, new CustomComparator());

答案 1 :(得分:0)

        Collections.sort(listOfPhonebook , new Comparator<Phonebook>() {
            public int compare(Phonebook phn1, Phonebook phn2) {
                return phn1.name.compareTo(phn2.name);
            }
        });

试试这个,假设name是电话簿类的变量,并按名称排序。