How can i back form fragment 1 to activity? My MainActivity go to -> fragment A/B then i want to back to MainActivity. But if i do it By onBackPressed() Method , that will close it app. How can i solve it ? Have any ways to fix it ?Thx
P.S. My fragment is an full page not a tab bar or list. That is change the hole page in the activity
Here is my code:
MainActivity:
@Override
public void onBackPressed() {
if (getSupportFragmentManager().findFragmentByTag("Frag1") != null) {
getSupportFragmentManager().popBackStackImmediate("Frag1",0);
} else {
super.onBackPressed();
}
}
change fragments methods:
case 0:
fragment = new webportal();
bundle = new Bundle();
bundle.putString("key", mLoginHost);
fragment.setArguments(bundle);
break;
case 1:
fragment = new keypaf();
bundle = new Bundle();
LcLoginClient.LcService service =
mLoginClient.getService(PACKAGE_NAME_VOICE_CALL_SERVER);
if (service != null) {
serverPort = Integer.valueOf(service.get(LcLoginClient.LcService.Key.KEY_PORT));
bundle.putString("key", mLoginHost);
fragment.setArguments(bundle);
}
break;
}
currentFragment = i;
if (fragment != null) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.fragment_container, fragment).addToBackStack("Frag1").commit();
}
Fragment A To fragment B/c method :
public void keypad(View v) {
Fragment fragment = new keypaf();
Bundle bundle = new Bundle();
bundle.putString(
host, mLoginHost);
fragment.setArguments(bundle);
FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fragment).addToBackStack("Frag1");
fragmentTransaction.commit();
}
public void remote(View v) {
Fragment fragment = new Remote();
Bundle bundle = new Bundle();
bundle.putString(
remote, mLoginHost);
fragment.setArguments(bundle);
FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fragment).addToBackStack("Frag1");
fragmentTransaction.commit();
}
}
Can anyone can help me ??