私のアプリケーションの一部では、オプションが選択されたときにすべての連絡先のリスト(電話番号を含む)を表示する必要があります。
ボタンが押されたときに呼び出されるアクティビティは次のとおりです。
package com.example.prototype01;
import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.util.Log;
public class nominateContactsActivity extends Activity {
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.nominatecontactslayout);
Cursor c = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
String contactName, contactTelNumber = "";
String contactID;
c.moveToFirst();
for (int i = 0; i < c.getCount(); i++) {
contactName = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
contactID = 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[] { contactID },null);
while (pCur.moveToNext()) {
contactTelNumber = pCur.getString(pCur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}
}
Log.i("name ", contactName + " ");
Log.i("number ", contactTelNumber + " ");
c.moveToNext();
}
}
}
ご覧のとおり、このコードは、受話器に保存されているすべての連絡先の名前と電話番号を返します。現在、これらは単にlogcatにエコーされます。名前と番号だけを表示して、代わりにリストビューにこれらのアイテムを一覧表示する方法を理解できないようです。私は役に立たないためにいくつかのチュートリアルに従ったので、しぶしぶ私はあなたの親切な援助を求めます。この質問には何度も答えられていると確信しているので、しぶしぶ言いますが、コードにソリューションを適用できないようです。
前もって感謝します!!
よろしく、アントワン