我创建了一个简单的Spinner并将其绑定到SimpleCursorAdapter
。我正在使用内容提供程序中的城镇列表来填充SimpleCursorAdapter
。
当我要保存用户的选择时,我计划保存正在填充到我的SimpleCursorAdapter
中的行id。
我使用以下代码来获取ID。
townSpinner.getSelectedItemId();
我无法确定的是,在重新拉回保存的项目时如何最好地设置选择。以下代码有效,但它只通过位置号设置选择。
townSpinner.setSelection(2);
我应该创建一个循环来根据ID确定正确的位置值吗?
long cityId = Long.parseLong(cursor.getString(CityQuery.CITY_ID));
for (int i = 0; i < citySpinner.getCount(); i++) {
long itemIdAtPosition2 = citySpinner.getItemIdAtPosition(i);
if (itemIdAtPosition2 == cityId) {
citySpinner.setSelection(i);
break;
}
}