一、問題的由來
我們的首頁底部導航是這樣的
有個需求就是,我們在首頁界面中點啊點啊,點到一個商品詳情頁,加入購物車之後,有個按鈕,可以直接跳回首頁,並轉到購物車選項。可能你會說直接跳回去,然後設置爲購物車那一頁不就行了麼,然而並非如此。
二、singleTask介紹
只有一個實例。在同一個應用程序中啓動他的時候,若Activity不存在,則會在當前task創建一個新的實例,若存在,則會把task中在其之上的其它Activity destory掉並調用它的onNewIntent方法。其他複雜的介紹就不多說了,可參考http://blog.csdn.net/shinay/article/details/7898492
三、 開始實現
1.設置爲singleTask啓動模式
<activity
android:name=".MainTabActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait" />
2.商品詳情中調回去,並且加上標誌信息
Intent intent=new Intent(this,MainTabActivity.class);
intent.putExtra("from", "goodDetail");
startActivity(intent);
3.首頁中重寫onNewIntent,根據標誌信息,轉到指定位置
@Override
protected void onNewIntent(Intent intent) {
if(intent.getStringExtra("from").equals("goodDetail")){
ToShopCart();
}
super.onNewIntent(intent);
}