To me it's not clear how to get the right cursor if you have multiple Loaders. Lets say you define two different Loader with:
getLoaderManager().initLoader(0,null,this);
getLoaderManager().initLoader(1,null,this);
then in onCreateLoader() you do different things depending on the id:
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle arg1) {
if (id==0){
CursorLoader loader = new CursorLoader(getActivity(),
MaterialContentProvider.CONTENT_URI,null,null,null,null);
}else{
CursorLoader loader = new CursorLoader(getActivity(),
CustomerContentProvider.CONTENT_URI,null,null,null,null);
};
return loader;
}
so far so good. But how to get the right cursor in onLoadFinished() because you don't get any id to identify the right Cursor for the right Cursoradapter.
@Override
public void onLoadFinished(Loader<Cursor> arg0, Cursor cursor) {
mycursoradapter1.swapCursor(cursor);
if(isResumed()){
setListShown(true);
}else {
setListShownNoAnimation(true);
}
}
//and where to get the cursor for mycursoradapter2
or am I wrong and this is the wrong way to get results for two different cursoradapter in one fragment.
LoaderCallbacks
in this case) with more than one type. It merely works in your case since both times, the result is aCursor
. – RoselLoader
s. Please go through this https://mcmap.net/q/189496/-multiple-loaders-in-same-activity – Blankbook