Sto cercando di capire come utilizzare Loaders
in Android 3.0 ma non riesco a farlo funzionare. I documenti descrivono solo utilizzando CursorLoader
ma sto usando AsyncTaskLoader
.Caricatori in Android Honeycomb
Dai documenti sembra che sia necessario solo implementare AsyncTaskLoader.loadInBackground()
ma non viene mai chiamato dopo getLoaderManager().initLoader()
e quindi creare il caricatore nel callback.
Posso vedere messaggi di debug che dicono Created new loader LoaderInfo{4040a828 #0 : ArticleDataLoader{4036b350}}
quindi sembra che sia stato creato correttamente.
E 'possibile che attualmente i caricatori siano danneggiati nell'SDK o c'è qualche metodo che è necessario chiamare dopo aver creato il caricatore? (non l'hanno fatto nell'esempio CursorLoader
).
EDIT: Sembra chiamando forceLoad()
sul Loader tornato da initLoader()
inizia il carico almeno, ma questo significa che non è possibile gestire le rotazioni correttamente :(
Se trovi una risposta a questo per favore fammi sapere pure. Non sono stato in grado di trovare nulla. –
C'è anche http://code.google.com/p/android/issues/detail?id=14944 che menziona la stessa soluzione alternativa al commento "Modifica". –
Sì, questo è il mio bug report su questo :) – alexanderblom