Кто-то может объяснить Курсор в андроиде?

Кто-то может объяснить, как курсор точно работает? Или поток следующей части кода? Я знаю, что это - sub действие, и все кроме я не понял, как Курсор работает точно.

final Uri data = Uri.parse("content://contacts/people/");
final Cursor c = managedQuery(data, null, null, null, null);
String[] from = new String[] { People.NAME };
int[] to = new int[] { R.id.itemTextView };
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,R.layout.listitemlayout, c, from, to);
ListView lv = (ListView) findViewById(R.id.contactListView);
lv.setAdapter(adapter);
lv.setOnItemClickListener(new OnItemClickListener() {
     public void onItemClick(AdapterView<?> parent, View view, int pos, long id) { 

          c.moveToPosition(pos);
          int rowId = c.getInt(c.getColumnIndexOrThrow("_id"));
          Uri outURI = Uri.parse(data.toString() + rowId);
          Intent outData = new Intent();
          outData.setData(outURI);
          setResult(Activity.RESULT_OK, outData);
          finish();
     }
});

Спасибо.

5
задан Prabhat 18 June 2010 в 12:08
поделиться

1 ответ

Курсор - это список/указатель, созданный из ресурса базы данных. (В PHP думайте как $res из mysql_query())

Когда вы выполняете

managedQuery(data, null, null, null, null);

запрос контактов, он возвращает курсор, который является указателем на записи в результатах

Затем вы создаете адаптер из этого курсора. Адаптер - это представление результатов на объектном уровне, взятое из источника, на этот раз это курсор, он же записи из базы данных. (В PHP для адаптера думайте как о массиве для Smarty Templates, массив - это адаптер)

SetOnItemClickListener должен быть прост для понимания, если вы знаете программирование на основе событий.

3
ответ дан 15 December 2019 в 06:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: