2016-11-22 8 views
0

여기에서 문제가 있습니다, 나는 A → B를 수행하고 BI에서 B → C를 수행합니다. 이제 CI에서 뒤로 버튼을 누르면 A.로 돌아갑니다. 흐름을 시작하려면 A → B → C이지만 C를 시작하면 B에서 지우고 다시 C로 누르면 다시 A로 돌아갑니다. C에서 시작하고 CLEAR_TOP을 시작할 수 있지만 다른 대안을 찾고 있습니다. 하나입니다. onBackPressed()는 이전 활동의 onBackPressed()를 호출해야합니다

은 다시 눌러에 열 싶지 않아 활동에 의도를 통과 한 후 당신에게

+5

'Activity' C에 갈 때'Activity' B에서'finish()'를 호출하면 어떨까요? 물론'startActivity' 다음에'finish()'를 호출하십시오. –

+0

B 내에서 C를 시작한 후'finish()'를 호출하십시오. –

+0

확인을 위해 A, B 및 C가 같은 활동의 단편입니까? – Nithinlal

답변

2

finish()를 호출 할 수 있습니다. 당신이 B에 대한 의도를 시작한 후에

2

전화 finish(); 감사드립니다.

3

당신은 당신이 B 활동에서, 시작 C 작업 후() 마무리를 호출하면 finish()

Intent intent = new Intent(this, NextActivity.class); 
startActivity(intent); 
finish(); 
1
Intent intent = new Intent(this, C.class); 
startActivity(intent); 
finish(); 

를 호출해야합니다. 스택에서 B 활동을 제거 할 수 있습니다. 따라서 C에서 뒤로 누르면 A 활동이 표시됩니다.

2
//FROM A TO B 
    Intent A = new Intent(A.this,B.class); 
    startActivity(A); 

    //FROM B TO C 
    Intent B = new Intent(B.this,C.class); 
    startActivity(B); 
    finish(); 

    //FROM C TO A 
    onBackPressed(); you can go directly to A. 

희망이 도움이 될 수 있습니다.

관련 문제