連絡先に関連する特定の機能を実現しようとしています.デバイス内のすべての連絡先を表示するフラグメントがあります.最初に、フラグメントインスタンスが作成されたときに、連絡先が取得され、配列リストに保存され、リストビューに表示されます. 初めて取得するとき、連絡先を読み込むのに約 3 ~ 5 秒かかるため、読み込みビューを配置しました。このリストを保存して保持し、2 回目の連絡先リストの取得を高速化する方法はありますか?ボタンを押したときにフラグメントを置き換えています..ここに私のコードがあります。
public static void replaceFragment(FragmentManager fm, int container, Fragment fragment) {
FragmentTransaction ft = fm.beginTransaction();
ft.replace(container, fragment);
ft.commit();
}
アクティビティの で呼び出されonCreate()
ます。
Utils.replaceFragment(getSupportFragmentManager(), R.id.container, new Fragment1());
また、アクティビティでボタンを押すたびに、このメソッドを呼び出しています..
@Override
public void onClick(View v) {
Typeface tf;
switch (v.getId()) {
case R.id.frag1_btn:
Utils.replaceFragment(getSupportFragmentManager(), R.id.container, new Fragment1());
break;
case R.id.contact_btn:
Utils.replaceFragment(getSupportFragmentManager(),
R.id.container, new ContactFragment());
break;
}
}
saveToBackStack()
メソッド とonsavedInstanceState(Bundle)
とについて検索しonRetainSavedInstance()
ましたが、私の場合、ここで使用できますか? また、これらを使用するにはaddToBackStack()
方法が必要ですか?..私はまだ初心者です.何か提案はありますか?