0

谁能告诉我应该如何在微调器中显示电话号码和联系人姓名?请帮助,在此先感谢。

4

1 回答 1

0

使用此代码将联系人加载到 ArrayList 中并将其传递给 Spinner 的构造函数

ArrayList<String> contacts = new ArrayList<String>();

        Cursor c = getContentResolver().query(
                ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
                null, null, null);
        while (c.moveToNext()) {

            String contactName = c
                    .getString(c
                            .getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
            String phNumber = c
                    .getString(c
                            .getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

            contacts.add(contactName + ":" + phNumber);

        }
        c.close();

将此传递给您的 Spinner,例如:

Spinner s = (Spinner) findViewById(R.id.Spinner);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_item, contacts);
        s.setAdapter(adapter);

不要忘记添加权限

 <uses-permission android:name="android.permission.READ_CONTACTS" />

在您的清单文件中。

于 2016-07-04T09:00:50.973 回答