Tuesday, 3 September 2013

Android Fragment back stack causing wired issue

Android Fragment back stack causing wired issue

I am having fragment in a single activity in the following sequence.
fragment 1 --> fragment 2 --> fragment 3 --> fragment 4
I am using below code for fragment transaction.
mFragmentTransaction=mFragmentManager.beginTransaction();
mFragmentTransaction.replace(R.id.fragment_container,
mFragment,fragmentname);
mFragmentTransaction.addToBackStack(tag);
mFragmentTransaction.commit();
What i want to do is when user is on fragment 3 or 4 then on back press if
user is on fragment 4 then fragment 4 --> fragment 3 --> fragment 1. if
user is on fragment 3 then fragment 3 --> fragment 1.
I am using following code in onback press.
if(mFragmentManager.findFragmentByTag("fragment 3")!=null){
mFragmentManager.popBackStack("fragment
2",FragmentManager.POP_BACK_STACK_INCLUSIVE);
}else{
super.onBackPressed();
}
But it cause wired issue on on back press as follow.
fragment 4 --> fragment 1 instead of fragment 4 --> fragment 3 -->
fragment 1. fragment 3 --> fragment 1
please help .

No comments:

Post a Comment