通过query()方法返回一个cursor对象。但是database是在query()方法中打开的。
如果在query()方法中关闭database,返回的cursor对象就无法使用。
query()方法如下
public Cursor query(String table, String[] columns, String selection,
String[] selectionArgs, String groupBy, String having,
String orderBy, String limit) {
Cursor cursor = null;
SQLiteDatabase database = mDataBaseOpenHelper.getReadableDatabase();
cursor = database.query(table, columns, selection, selectionArgs,
groupBy, having, orderBy, limit);
database.close();
return cursor;
}
Cursor cursor = null;//把这句话放在方法的外面,让它作为一个全局变量,你放在方法里它就是一个局部变量了;
当你这个方法执行完之后,它也就消失了
如果回答对您有帮助,请采纳