?轉載請注明出處:http://blog.csdn.net/u011895534/article/details/47616979
?在實際的項目開發(fā)中也許會碰到一種情況,需要從A界面跳轉到B界面,再從B界面跳轉到C界面,再從C界面跳轉到D界面,最后需要從D界面跳回到A界面,并且把B、C 、D界面都干掉。也許立馬會有人覺得可以在B、C、D界面跳轉時就finish()掉當前界面就可以了。但是如果需要在B、C、D界面之間可以正常的返回上一界面,那么在跳轉的時候finish()掉當前界面就不合理了。其實Android已經為我們提供了一種方法完成上述功能,只是一般很難找到而已,我也是一次機會在公司的一個老資格工程師那里知道,所以寫出來和大家分享一下,非常的簡單,只需要兩行代碼。
前面的A界面跳轉到B界面,B界面跳轉到C界面,C界面跳轉到D界面都是正常的跳轉,在最后D界面跳回A界面的時候這么寫就可以了:
[java]?view plain?copy
Intent?intent?=?new?Intent(D.this,A.class);??
????????????intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);??
????????????startActivity(intent);??
????????????finish();??
OK,這么寫就可以從D界面跳回到A界面,并且B、C界面都已經被干掉了。