Birden fazla Yükleyiciniz varsa doğru imleci nasıl elde edeceğiniz bana göre net değil. Aşağıdakilerle iki farklı Yükleyici tanımladığınızı varsayalım:
getLoaderManager().initLoader(0,null,this);
getLoaderManager().initLoader(1,null,this);
sonra onCreateLoader () 'da id'ye bağlı olarak farklı şeyler yaparsınız:
@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;
}
çok uzak çok iyi. Ancak onLoadFinished () ' de doğru imleci nasıl elde edersiniz, çünkü doğru Cursoradapter için doğru İmleci tanımlamak için herhangi bir kimlik elde edemezsiniz.
@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
ya da yanılıyor muyum ve bu, bir parçadaki iki farklı imleç bağdaştırıcısı için sonuç almanın yanlış yoludur.
LoaderCallbacks
birden fazla olan bu durumda) yazın. Sadece sizin durumunuzda işe yarıyor, çünkü her iki durumda da sonuç a Cursor
.
Loader
s kullanabilirsiniz . Lütfen bu stackoverflow.com/a/20839825/2818583