私は 2 つのリストを持っています。1 つは名前で、もう 1 つは数字です。名前のリストを並べ替えると正常に機能しますが、数字がそれらの名前と一致せず、これが私のコードです
try {
Uri uri = ContactsContract.CommonDataKinds.Phone.CONTENT_URI;
String[] projection = new String[] {
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER };
List<String> contactNames = new ArrayList<String>();
List<String> contactNumbers = new ArrayList<String>();
Cursor people = getContentResolver().query(uri, projection, null,
null, null);
int indexName = people
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME);
int indexNumber = people
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
people.moveToFirst();
do {
String name = people.getString(indexName);
String number = people.getString(indexNumber);
contactNames.add(name);
contactNumbers.add(number);
} while (people.moveToNext());
PhoneContactsAdapter adapter = new PhoneContactsAdapter(context,
contactNames, contactNumbers, selectedContacts);
Collections.sort(contactNames);
adapter.notifyDataSetChanged();
lv_contacts_phone.setAdapter(adapter);
lv_contacts_phone.setFastScrollEnabled(true);
} catch (Exception e) {
System.out
.println("(SELECTFRIENDSACTIVITY)Selecting contacts from friends: "
+ e);
}
ここで、contactNames と contactNumbers がリストビュー lv_contacts_phone に与えられます。ここでは、並べ替えられた名前のみが取得され、番号が名前と適切に一致しませんでした。助けてください