2011-03-27 39 views
0

也許我不習慣於Android的開發,但是當我看,我期望一切都按順序完成。當一個活動結束時,下一個開始。但是,似乎我的代碼不能這樣工作。看看下面的代碼,例如:爲什麼Android只在使用for-loop時才顯示最後的Activity?

for (int i = 0; i < 3; i++){    
    Intent myIntent = new Intent(Game.this.getBaseContext(), NextScreen.class); 
    myIntent.putExtra("something", i); 
    myIntent.putExtra("Opp", oppList.get(i).toString()); 
    startActivityForResult(myIntent, 0); 
} 

它不顯示活動之一,等待你做你在屏幕上做什麼,然後再回來的第二個活動。它立即顯示第三個活動。如果我點擊我的android模擬器上的後退按鈕,它會顯示我的活動二...如果我再次點擊回來,它會顯示我的活動...所以它只是一種快速觸發這些活動到屏幕上而無需等你做這些活動。我相信我不是第一個想要做這種事情的人。任何想法我做錯了什麼?你如何解決這種情況?

回答

0

活動異步執行。序列化的一種方法是將您的onActivityResult方法中的活動鏈接起來。向每個(子)活動傳遞一個活動編號,從0開始,並讓子活動將其作爲結果的一部分返回。您的onActivityResult邏輯可以處理響應,然後檢查活動編號並觸發下一個活動(如果有的話)。

+0

我不知道我理解你告訴我什麼嘗試。目標是遍歷許多活動。我不確定在你的聲明中我會定義循環次數(因爲它隨着遊戲的發展而變化)。它會在活動中定義我將多次啓動嗎?這是否會是某種遞歸實體? – 2011-03-27 21:28:37

0

我不認爲你可以在1個方便的功能中排隊這樣的頁面。你最好有一個功能nextPage,這需要當前的活動將用戶移動到下一個活動。這可以在用戶每次準備進入下一頁時觸發(通過按下按鈕或某物觸發)。

或只啓動按鈕按下一個活動直接

相關問題