문제

I have a tab group with 4 tabs. In 2nd tab i have 4 child activities, after going from child 1 => child 2 => child 3 => child 4 and when i click a button it should return to child 1 as a fresh activity without having the history of child 2 3 4.

i have tried this: starting child 1 from child 4,

TabGroupActivity parentActivity = (TabGroupActivity) getParent();

    Intent intent = new Intent(getParent(),child1.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    parentActivity.startChildActivity("child", intent);

can anyone help me.

도움이 되었습니까?

해결책

Start your "child" activity with just startActivity, then when back pressed on the child activity, capture onBackPressed on the child activity and start your parent activity again with a new intent like so:

@Override
public void onBackPressed() {
   startActivity(new Intent(this, FirstActivity.class)
     .setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK));
}

This should start you fresh with a newly started parent activity.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top