Intereting Posts
Как отлаживать сообщения BOOT_COMPLETE в широковещательном приемнике «Force Close»? Как я должен обрабатывать тайм-ауты сервера и ответы на код ошибки на сообщение http в приложении Android? Файлы DDMS не найдены Android \ platform-tools \ adb.exe Каковы различия между R.styleable, R.style и R.attr? Proguard Retrace не работает с информацией о времени выполнения stacktrace, например E / AndroidRuntime (10237): Создайте собственную библиотеку Android с Adobe Air Можно ли установить фоновый цвет значка в ящике уведомлений на Android, если используется Parse Push? Виджет показывает «Приложение не установлено» Тост в ICS Android: javac vs Dalvik Таблица с переменной шириной столбца для строки (аналогично UICollectionView для iOS) OkHttp javax.net.ssl.SSLPeerUnverifiedException: имя хоста domain.com не проверено Ошибка IntentService для Android IntellService Как я могу использовать код BitmapRegionDecoder в android 2.2.2 (Froyo)? Программно свернуть группу в ExpandableListView При использовании Gson появляется странное имя «nameValuePairs»

Отображение контактов в порядке сортировки ContactsContract.Contact of Content Resolver

Мое намерение состоит в том, чтобы отображать контакты в порядке сортировки с использованием средства определения content resolver в android.

Для этого я пишу:

 Cursor pCur = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID+ " = ?", new String[] { id }, null); 

Необходимо, чтобы последний параметр в методе запроса не был пустым для сортировки элементов по Name . Какую часть кода мне нужно заменить нулевым параметром, чтобы добиться сортировки по имени? Или, пожалуйста, помогите мне запросить в таком случае …

заранее спасибо

Solutions Collecting From Web of "Отображение контактов в порядке сортировки ContactsContract.Contact of Content Resolver"

Для сортировки результата в соответствии с именем используйте Phone.DISPLAY_NAME константу с ASC качестве последнего параметра для метода query . Сделайте это как:

  Cursor pCur = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID+ " = ?", new String[] { id }, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME+" ASC"); 

Вы можете использовать Upper() для сортировки как для нижнего, так и для имени контакта с верхним регистром.

 ContentResolver cr = getContentResolver(); Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, "upper("+ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + ") ASC"); 

Было бы лучше использовать SORT_KEY_PRIMARY или SORT_KEY_ALTERNATIVE на уровне API 11 и более поздних версий .

 Cursor cursor = getContentResolver().query( ContactsContract.Contacts.CONTENT_URI, null, null, null, ContactsContract.Contacts.SORT_KEY_PRIMARY + " ASC");