如何从内容提供商处获取每一行?我尝试使用response
执行此操作
然后
file:
但它没有工作。它不是占用所有的行,而是重复使用最后一行,与我的数据库的第1行一样多次。
答案 0 :(得分:0)
你正在获得"行-1和#34;因为您使用moveToFirst()
后跟moveToNext()
作为循环控件会导致您跳过第一行。
如果您看到数据库的所有行都具有相同的列"字符串",则代码中的问题会显示您" s" (您没有发布)或者您的数据库包含每行的相同值,或者您的query()
中没有正确实现ContentProvider
。
您还可以使用Cursor.getCount()获取光标中的行数。
当针对由DB支持的内容提供商运行时,此代码适用于我:
Cursor c = getContentResolver().query(uri, null, null, null, null);
if (c != null) {
while (c.moveToNext()) {
String s = c.getString(c.getColumnIndexOrThrow("name"));
Log.i("Demo", s);
}
c.close();
}