我有幾個活動可以通過下面的菜單繼承基本活動。Android - 作爲選項卡的菜單項
@Override
public boolean onOptionsItemSelected(MenuItem item) {
Intent myIntent;
switch(item.getItemId()) {
case R.id.home:
myIntent = new Intent(this, HomeActivity.class);
startActivityForResult(myIntent, 0);
return true;
case R.id.map:
myIntent = new Intent(this, GoogleMapsActivity.class);
startActivityForResult(myIntent, 0);
return true;
case R.id.art:
myIntent = new Intent(this, ArtActivity.class);
startActivityForResult(myIntent, 0);
return true;
...
default:
return super.onOptionsItemSelected(item);
}
}
這很好,但選擇菜單項會啓動該活動的新實例。 pause()和resume()如何與setResult()一起使用,以便在給定時間只有一個或更少的每個活動的實例?
爲了更具體地說明,當用戶回到先前訪問的活動時,它應該處於與它離開它相同的狀態(如標籤)。
首先,感謝您的回覆開始「活動」!這更接近我試圖完成的目標。我對這個行爲有一個問題。如果我轉到具有應用程序主要意圖的活動(從應用程序執行開始),然後返回到以前打開的活動,它仍然創建一個新實例(或至少回顧onCreate()。它不會如果我在非主要活動選項卡之間導航,請執行此操作。這種情況會發生什麼原因? – 2011-02-02 20:54:27
它與我的onOptionsItemSelected()的實現方式有關嗎? – 2011-02-02 21:00:10