タグ付けされた質問 「android-loadermanager」

6
LoaderManagerのinitLoaderとrestartLoaderの違い
との違いについて完全に迷っinitLoaderていますrestartLoader機能のますLoaderManager。 彼らは両方とも同じ署名を持っています。 restartLoader ローダーが存在しない場合は、それも作成します(「このマネージャーで新しいローダーを開始するか、既存のローダーを再起動します」)。 2つの方法の間に何らかの関係がありますか?呼び出しはrestartLoader常に呼び出しinitLoaderますか?電話しrestartLoaderなくても電話できますinitLoaderか?initLoader2回呼び出してデータを更新しても安全ですか?2つのうち1つを使用する必要があるのはなぜですか?

4
AsyncTaskLoaderとAsyncTask
以来Honeycombとv4 Compatibility Libraryそれを使用することが可能ですAsyncTaskLoader。私が理解しているところによると、はAsyncTaskLoader画面の反転などの構成変更を通じて生き残ることができます。 のAsyncTaskLoader代わりに使用することをお勧めしますAsyncTaskか?LoaderManagerあまりにも絵に入りますか? しかし、を正しく使用する方法についての良い例は見つかりませんでしたAsyncTaskLoader。ドキュメントにも例はありません。誰でもいくつかの良い例を提供できますか?

3
複数のローダーを備えたLoaderManager:適切なカーソルローダーを取得する方法
複数のローダーがある場合、正しいカーソルを取得する方法はわかりません。次の2つの異なるローダーを定義するとします。 getLoaderManager().initLoader(0,null,this); getLoaderManager().initLoader(1,null,this); 次に、onCreateLoader()で、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; } ここまでは順調ですね。しかし、正しいCursoradapterの正しいCursorを識別するためのIDを取得しないため、onLoadFinished()で正しいカーソルを取得する方法。 @Override public void onLoadFinished(Loader<Cursor> arg0, Cursor cursor) { mycursoradapter1.swapCursor(cursor); if(isResumed()){ setListShown(true); }else { setListShownNoAnimation(true); } } //and where …

5
ContentProviderを使用しないCursorLoaderの使用
Android SDKのドキュメントには、startManagingCursor()メソッドは廃止されていると書かれています: このメソッドは非推奨です。代わりに、LoaderManagerで新しいCursorLoaderクラスを使用してください。これは、Android互換性パッケージを通じて古いプラットフォームでも利用できます。このメソッドを使用すると、アクティビティは、アクティビティのライフサイクルに基づいて、指定されたカーソルのライフサイクルを管理します。つまり、アクティビティが停止すると、指定したCursorでdeactivate()が自動的に呼び出され、後で再起動するとrequery()が呼び出されます。アクティビティが破棄されると、管理されているすべてのカーソルが自動的に閉じられます。HONEYCOMB以降をターゲットにしている場合は、代わりにLoaderManagerを使用することを検討してください。 だから私は使用したいと思いますCursorLoader。しかし、コンストラクタでURIが必要なときに、カスタムでCursorAdapter、なしContentProviderでどのように使用できCursorLoaderますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.