0
我有一个实现LoaderManager.LoaderCallbacks游标类的活动。 我有从SQlite获取数据的这个功能。从SimpleCursorAdapter获取光标
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
switch (id) {
case ITEM_LOADER_ID:
// The uri points to Item, which is the items in the inventory
Uri uri = InventoryContract.Item.contentUriWithAccount(mCloverAccount);
String sortOrder = InventoryContract.Item.NAME;
String selection = "";
try {
selection = InventoryContract.ItemColumns.CODE;
catch (Exception e){
Log.e("Error",e.toString());
}
return new CursorLoader(HomeActivity.this, uri, null, selection, null, sortOrder);
default:
// An invalid id was passed in
}
throw new IllegalArgumentException("Unknown Loader ID");
}
我有一个SimpleCursorAdapter
SimpleCursorAdapter adapter = new SimpleCursorAdapter(
this,
android.R.layout.simple_list_item_2,
null,
new String[]{InventoryContract.Item.NAME, InventoryContract.Item.PRICE_TYPE},
new int[]{android.R.id.text1, android.R.id.text2},
0
);
这是功能性和获取数据,但我想要得到的光标这样我就可以获取所有信息,并存储到用于执行后的名单。我搜索所有相关链接获取光标,并找到一个代码是:
Cursor c = adapter.getCursor();
try {
int i = 0;
while (c.moveToNext()){
Log.e("In Log Cursor",c.getString(i));
i++;
}
c.close();
}
catch (Exception e){
Log.e("Error",e.toString());
}
但它得到空游标。我想获取这些数据并为进一步操作制作自定义适配器。请帮助我找到解决方案或任何其他方式从SQlite获取数据并将其存储为List,在获取后我可以使用它并可以在RecyclerView中设置它。提前致谢。
你不需要任何自定义适配器步骤,只是用'SimpleCursorAdapter',如果你想显示的'RecyclerView'使用[这](HTTPS数据://依据。 github.com/Shywim/127f207e7248fe48400b)适配器代替 – pskink
CursorRecyclerAdapter(游标游标)我必须在此函数中传递游标,但游标将从哪里获取? – Awais
请参阅http://www.grokkingandroid.com/using-loaders-in-android/#how_to_deal_with_cursoradapters – pskink