我有一个应用程序试图读取位于外部卡上的数据库。关键是数据库打开是因为它警告我Toast,但是我无法使用表名的字段数据加载游标。该数据库称为基本计划,其中有一个表llamda与名为names的列联系。我正在使用的代码如下: 试试{
SQLiteDatabase.openDatabase("/storage/external_SD/.Sistem/agenda", null, SQLiteDatabase.OPEN_READWRITE);
Toast.makeText( this, "BD1 abierta", Toast.LENGTH_LONG ).show();
}
catch (Exception e)
{
Toast.makeText( this, "No se pudo abrir BD1", Toast.LENGTH_LONG ).show();
}
try {
Spinner spn2 = (Spinner)this.findViewById(R.id.spn2);
Cursor cur1 = baseDatos.rawQuery("select nombre from contactos ORDER BY nombre ASC", null);
startManagingCursor(cur1);
String[] from = new String[]{"nombre"};
int[] to = new int[] { android.R.id.text1 };
SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this,android.R.layout.simple_spinner_item, cur1, from, to);
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spn2.setAdapter(mAdapter);
} catch (Exception e) {
Log.i(TAG, "Error al abrir o crear la base de datos" + e);
}
感谢。
答案 0 :(得分:0)
public void startManagingCursor (Cursor c)
此方法在API级别11中已弃用。 改为使用新的CursorLoader类和LoaderManager;这也是可用的 通过Android兼容包的旧平台。 请检查此链接http://developer.android.com/reference/android/content/CursorLoader.html