如何为已知的rowid选择微调器中的行?

时间:2011-01-03 08:22:44

标签: android spinner

当我打开EditRecord的Activity时,我想在编辑的记录中选择微调器行以获得足够的值 我发现下面的代码,但它在spinner中的几个记录是好的,但是当spinner.cursor包含许多记录时,我认为它不正确。 是否有其他方法可以为已知的rowid选择微调器行?

Spinner spinner = (Spinner) findViewById(R.id.spinner);
spinner.setAdapter(new SimpleCursorAdapter(...));
for (int i = 0; i < spinner.getCount(); i++) {
   Cursor value = (Cursor) spinner.getItemAtPosition(i);
   long id = value.getLong(value.getColumnIndex("_id");
   if (id == rowid) {
      spinner.setSelection(i);
   }
}

1 个答案:

答案 0 :(得分:0)

为什么每次都有光标并查看列索引?只需:

for (int i = 0; i < spinner.getCount(); i++) {
   long id = spinner.getItemIdAtPosition(i);
   if (id == rowid) {
      spinner.setSelection(i);
   }
}