[英]How to finish activities up to one specific activity?
例如,我打開了活動A,B,C,D。
我想完成D和C,然后返回B。
我不想用明確的任務和新的任務標志打開活動B。 我也想保留活動A,因此用戶可以使用“后退”按鈕從B返回A。
我該如何實現?
Intent intent = new Intent(getApplicationContext(), B.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
在B活動中:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if ((keyCode == KeyEvent.KEYCODE_BACK))
{
finish();
}
return super.onKeyDown(keyCode, event);
}
我認為您可以在C和D類的活動方法onDestroy()
中添加this.finish()
,然后,如果您從C轉到D,Android將完成此Activity,您將直接從D轉到B,而不是D到C。
希望對您有幫助。
讓全局靜態boolean
說closeActivity。 默認情況下將其設置為false
。 當D結束時,將變量設置為true
。 在活動C的onResume
,檢查變量是否設置為true
,如果為true
,則調用finish()
。 這樣做直到達到活動B,然后在B的onResume
中將boolean
設置為false
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.