1
ナビゲーションアイテムごとに異なるフラグメントを持つアンドロイドナビゲーションドロワーを使用する必要がありますが、問題は次のとおりです。ナビゲーション・ドロワーで再利用フラグメントがすでにインスタンス化されていますか?
*ナビゲーションアイテムに触れたときにフラグメントのインスタンスを保持して再利用する方法。
*もう一度インスタンス化する必要はありません。何度も何度も繰り返しますが、ユーザーの多くの時間がかかります。
誰でも助けてくれますか?ここ
は、私のコードの一部です:
public void selectDrawerItem(MenuItem menuItem) {
// Create a new fragment and specify the fragment to show based on nav item clicked
Fragment fragment = null;
Class fragmentClass;
switch(menuItem.getItemId()) {
case R.id.nav_inicio:
fragmentClass = DestaquesFragment.class;
break;
case R.id.nav_cardapio:
fragmentClass = CategoriasFragment.class;
break;
case R.id.nav_meusPedidos:
fragmentClass = MeusPedidosFragment.class;
break;
default:
fragmentClass = DestaquesFragment.class;
}
try {
fragment = (Fragment) fragmentClass.newInstance();
} catch (Exception e) {
e.printStackTrace();
}
// Insert the fragment by replacing any existing fragment
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.contentCompartilhado, fragment).commit();
// Highlight the selected item has been done by NavigationView
menuItem.setChecked(true);
// Set action bar title
setTitle(menuItem.getTitle());
// Close the navigation drawer
drawer.closeDrawers();
}
ありがとうございました! –
私はこれを試してみるつもりです。 –
@CharlesCampistaあなたの歓迎、私の答えが受け入れられるならそれを受け入れてください。幸運。 –