私はこれらの方法を維持したい:
setListShown(true);
setListShownNoAnimation(true);
しかし、私が使用する場合
onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
カスタムスタイルのレイアウトでを膨らませるにはFragment
、以前のメソッドを使用できず、次の例外を示します。
07-30 20:17:46.937: E/AndroidRuntime(1374): Caused by: java.lang.IllegalStateException: Can't be used with a custom content view
07-30 20:17:46.937: E/AndroidRuntime(1374): at android.support.v4.app.ListFragment.setListShown(ListFragment.java:282)
07-30 20:17:46.937: E/AndroidRuntime(1374): at android.support.v4.app.ListFragment.setListShown(ListFragment.java:258)
では、どのような解決策が考えられますか?
編集:
はFragment
ローダーを使用しListView
てデータベースからデータを入力します。それが私がそれらのメソッドを保持したい理由です、それらはここで必要です:
public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
mAdapter.swapCursor(data);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
}
最も簡単な解決策は、ソースに基づいて独自のコードを作成しListFragment
、同じ効果を示すために進行状況ウィジェットをレイアウトに追加することです。これまでに、言われたとおりにそれらの行を削除します。変更を加える場合は、ここに貼り付けます。