Выбор контактов - PullRequest
       14

Выбор контактов

0 голосов
/ 29 ноября 2011

Я работаю над этой единственной функцией для моего знакомства с Comp Eng Mobile App Class, около недели, начинаю понимать курсоры, контент-резольверы и адаптеры.Но код распознает, что я никогда не использую курсор, но я не знаю, как включить курсор в эту программу.

public class HelloAutoCompleteActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        ContentResolver content = getContentResolver();
        Cursor cursor = content.query(Contacts.CONTENT_URI, PEOPLE_PROJECTION, null, null, ContactsContract.Contacts.DISPLAY_NAME + " ASC");
        AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.autocomplete_country);
//      ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.list_item, PEOPLE_PROJECTION);
//      textView.ContactListAdapter adapter = new textView.ContactListAdapter(this, cursor);
        textView.setAdapter(adapter);
    }
    private static final String[] PEOPLE_PROJECTION = new String[] {
        ContactsContract.Contacts._ID,
        ContactsContract.CommonDataKinds.Phone.TYPE,
        ContactsContract.CommonDataKinds.Phone.NUMBER,
        ContactsContract.CommonDataKinds.Phone.LABEL,
        ContactsContract.Contacts.DISPLAY_NAME
    };
    String[] projection = new String[] {
            ContactsContract.Contacts._ID,
            ContactsContract.Contacts._COUNT,
            ContactsContract.Contacts.DISPLAY_NAME,
            ContactsContract.CommonDataKinds.Phone.NUMBER
         };

    //Get the base URI for the People table in the Contacts content provider.
    Uri contacts =  ContactsContract.AUTHORITY_URI;

    ////Make the query. 
    Cursor cursor;
}

1 Ответ

0 голосов
/ 29 ноября 2011

Как вы упомянули, вы начали понимать Курсор, поэтому, поскольку вы знаете основную функцию курсора, он используется для хранения данных, возвращаемых Запросом, в базе данных. поскольку в приведенном выше коде вы запрашиваете базу данных контактов устройства. и код возвращает данные в курсоре, так как вы не используете это дальше. Вы можете использовать курсор и сделать ниже

  1. взять имя контакта и отобразить на экране
  2. взять имя и номер контакта и отобразить.

Ниже приведена ссылка на образец программы, импортируйте ее, и вы получите лучшую идею.

http://l8rs.blogspot.com/2009/03/android-sample-list-contact-book-and.html

...