私は、アプリケーション内のリストビューでユーザーの電話から連絡先のリストを表示しようとしています。私は連絡先を取得することができますが、連絡先の中には複数の携帯電話番号があるので、その人を何度も表示したいと思っています。Androidはアプリケーションに連絡先を取得します
Cursor c = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
String name, number = "";
String id;
c.moveToFirst();
for (int i = 0; i < c.getCount(); i++) {
name = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
id = c.getString(c.getColumnIndex(ContactsContract.Contacts._ID));
if (Integer.parseInt(c.getString(c.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER))) > 0) {
Cursor pCur = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?", new String[] { id },
null);
while (pCur.moveToNext()) {
number = pCur.getString(pCur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}
}
Log.i("name ", name + " ");
Log.i("number ", number + " ");
c.moveToNext();
ユーザーが表示したい回数だけ表示したいですか?私は10桁の長さの携帯電話番号だけに基づいてそれを短いリストにすることさえできますか?
Example
Name: John Doe
Number 1: xxxxxxxxx
Number 2: xxxxxxxxx
Name: Sarah
Number 1: xxxxxxxxx
これは
John Doe xxxxxxxxx
John Doe xxxxxxxxx
Sarah xxxxxxxxx
ご質問はありますか? – mach
@machユーザーが表示されている数字の回数だけ表示します。私は10桁の長さの携帯電話番号だけに基づいてそれを短いリストにすることさえできますか? –
ExpandableListViewを使用し、その数値をサブ要素として使用したくないですか? – mach