intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
還有其他tag如下:
1.FLAG_ACTIVITY_CLEAR_TOP:跳轉到的activity若已在棧中存在,則將其上的activity都銷掉。
2.FLAG_ACTIVITY_NEW_TASK:activity要存在於activity的棧中,而非activity的途徑啓動activity時必然不存在一個activity的棧,所以要新起一個棧裝入啓動的activity。簡而言之,跳轉到的activity根據情況,可能壓在一個新建的棧中。
3.FLAG_ACTIVITY_NO_HISTORY:跳轉到的activity不壓在棧中。
4.FLAG_ACTIVITY_SINGLE_TOP:和Activity的Launch mode的singleTop類似。如果某個intent添加了這個標誌,並且這個intent的目標activity就是棧頂的activity,那麼將不會新建一個實例壓入棧中。簡而言之,目標activity已在棧頂則跳轉過去,不在棧頂則在棧頂新建activity。
http://zhidao.baidu.com/link?url=NmzUYjaDUgxXjg3rRdkly9XvcLFmqOzASyfLH04KZCQ_1-u2hixkXp3BN7hprBymjegVp7-QyPZlxJEXDXbzlef-MWCUtaKllg1H0HnC23m
栗子:
Intent mIntent = new Intent(SettingsActivity.this, LoginActivity.class);mIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//跳轉到的activity若已在棧中存在,則將其上的activity都銷掉。startActivity(mIntent);