2017-01-08 4 views
1

Я делаю listView от arrayList. Теперь я хочу, чтобы listView сортировался в алфавитном порядке. Я искал онлайн уже, но ни один из них не работал. Как я могу это достичь?Сортировка Arraylist в алфавитном порядке

Мой код:

String[] Hospitals = getResources().getStringArray(R.array.Hospitals); 
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, Hospitals); 

mListView.setAdapter(adapter); 

"Больницы" список в моем файле strings.xml.

+0

«Я искал в Интернете уже, но ни один из них не работал», что вы искали и пытались? –

+0

Почему бы не просто отсортировать массивList? –

+0

Это метод сортировки списка https://developer.android.com/reference/java/util/Collections.html#sort(java.util.List ), просто выведите ArrayList из своего массива и используйте его. – Budius

ответ

2

Как вы сказали, что больницы не является Список_массивы, а просто массив String (String []), так что вам нужно будет использовать это:

List<String> list = Arrays.asList(etst); 

Затем вы можете использовать следующий код для сортировки

Collections.sort(list, new Comparator<String>() { 
      @Override 
      public int compare(String s1, String s2) { 
       return s1.compareTo(s2); 
      } 
     }); 

Если вы хотите IgnoreCase:

Collections.sort(list, new Comparator<String>() { 
     @Override 
     public int compare(String s1, String s2) { 
      return s1.compareToIgnoreCase(s2); 
     } 
    }); 
0

сортирует массив с Arrays.sort (стационаров).

Смежные вопросы