use*_*730 2 android simplecursoradapter android-spinner
在我的应用程序的开始我显示一个对话框.在这个对话框中,我有2个微调器.如果我更改第一个微调器的条目,则应用程序会加载JSON文件并将其解析为数据库.然后,微调器从保存JSON文件的数据库中填充SimpleCursorAdapter.问题是,当我更改第一个微调器时,它总是加载上次更改微调器时保存的数据库.
这是来自onItemSelected方法的代码:
final Handler handler = new Handler() {
public void handleMessage(Message msg) {
dialogs.dismiss();
}
};
Thread checkUpdate = new Thread() {
public void run() {
klassenListeAktualisieren((new Long(txtBerufID)).toString());
handler.sendEmptyMessage(0);
}
};
checkUpdate.start();
dbHelperKlasse = new KlassenlisteDbAdapter(myContext);
dbHelperKlasse.open();
Cursor cursor_Names = dbHelperKlasse.fetchAllOfThem();
startManagingCursor(cursor_Names);
String[] columns = new String[] { dbHelperKlasse.KEY_TITLE };
int[] to = new int[] { android.R.id.text1 };
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(myContext, android.R.layout.simple_spinner_item,cursor_Names, columns, to);
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
klassenSpinner.setAdapter(mAdapter);
Run Code Online (Sandbox Code Playgroud)
如果您需要了解其他任何内容,请告诉我(代码等).
对于每个面临同样问题的人来说,解决方案是:
创建一个新方法,在其中放入对数据库的提取调用以及填充微调器的位置.
然后,在handleMessage()你的方法Handler(我关闭我的Dialog方法)中,调用此方法.因此,在他写入数据库之后,spinner会被填充,而不是在此过程中(然后显示数据库中的"旧"数据).
| 归档时间: |
|
| 查看次数: |
881 次 |
| 最近记录: |