快速提问,我有一个 ListView ,它是通过 AsyncTask 从数据库中填充的。我使用 if 语句来决定从哪个数据库方法获取游标。 db 方法在 asynctask 之外工作得很好,但只有在 Log 代码存在时才在 asynctask 内部工作。
if (i == 1) {
c = cdb.getFive();
Log.d("TAG5", DatabaseUtils.dumpCursorToString(c));
}
有效,但是
if (i == 1) {
c = cdb.getFive();
//Log.d("TAG5", DatabaseUtils.dumpCursorToString(c));
}
没用。有什么想法吗?
编辑 - 该代码在 doInBackground()
最佳答案
在从 Cursor
读取任何数据之前,您应该调用 c.moveToFirst()
方法。
实际上,方法 DatabaseUtils.dumpCursorToString()
调用方法 moveToPosition()
。为什么您的代码可以使用日志记录,而没有它就不能工作。
关于android - 日志影响 ListView ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9318320/