0
私のIOSアプリをアンドロイドに変換しようとしていますが、私は少しアンドロイド版です。私のアプリは、一般にナビゲーションドロワを使ってフラグメント間を移動します。私がフラグメントAに入ってからフラグメントBに行き、その後に戻るボタンを押すと、フラグメントAに戻ります。しかし、バックボタンでフラグメントAに行くと、再び始まり。以前のフラグメントに戻ってクラスを再度ロードせずにフラグメントの前の情報が表示される方法はありますか?誰かがこれについて助けることができれば素晴らしいだろうか?popBackStack on dismissing onCreate
これは、バックボタンが押されたコードです:
@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
android.support.v4.app.FragmentManager fm = getSupportFragmentManager();
if (fm.getBackStackEntryCount()>0) {
fm.popBackStack();
}
else {
System.out.println("no more back");
}
}
}
これは私が断片間を移動する方法である:
usersFragment fragment = new usersFragment();
android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
こんにちはnitinkumarpさん、ありがとうございますが、フラグメントが作成されたら、このようにして、必要なら再度どうやってリロードしますか?私はこのボタンを押したときにだけこの動作が必要ですが、別のページからのリンクでフラグメントに来ると、前にロードされていても再度ロードする必要があります。 IOSでは、UiViewsの間に戻るボタンを押すと、自動的に表示されます。 – saner
初期の回答を編集しました。それをチェックしてください:) – nitinkumarp
ありがとうnitinkumarp、それは素晴らしい働きました:)ところで、タグとして使用するよりも、私は "findFragmentById"を使用しました。 – saner