2011-03-21 38 views
3

我有一個愚蠢的小遊戲,我只是爲自己做的,但我正在考慮與朋友分享,因爲它沒有真正準備好「黃金時段」。遊戲涉及4秒內移動的人。Android,對最佳做法的快速提問

在我的遊戲中,每當遊戲級別提高時,我想禁用所有按鈕並顯示3 ... 2 ... 1 ...等倒計時,然後再次啓用所有按鈕。

現在有兩種方法可以做到這一點(我可以想到) 發送一個意圖,並移動到另一個活動,我可以有一個「潑」3,2,1動畫,然後回到遊戲活動...或

只需要在同一遊戲畫面中進行一些文字操作即可...... 3 ... 2 ... 1..go!

你會推薦哪個?

我只是害怕,如果我發送人到另一個活動,然後他們回來的動畫,並且遊戲不會完全加載,但計時器將運行,因此遊戲會給他們更少的時間來採取行動。

提前致謝!

回答

5

我個人認爲你應該在遊戲畫面上顯示倒計時。這不是出於性能原因,而僅僅是因爲我認爲它具有更好的用戶體驗。如果我需要迅速做出反應,我希望能夠看到UI,即使它被禁用。一旦遊戲開始,我不喜歡被拋到一個完全不同的屏幕上。

從性能角度來看,我認爲去其他活動應該沒問題。只要在onResume()方法中沒有昂貴的計算,返回遊戲屏幕活動應該很快,因爲它仍然會在倒計時活動之下的活動堆棧中。您可以考慮使用ActivityGroup來提高性能。

+0

聽起來不錯,謝謝! – Ryan 2011-03-22 05:22:02

1

我會猶豫是否切換到另一種活動,因爲過於熱心的任務殺手的只是人們對自己的手機(當然,我們知道它是不必要的,但很多人擁有他們)。如果任務殺手在用戶處於啓動畫面時殺死了主遊戲活動,則您的遊戲必須再次通過onCreate()。哪個不好。

我建議讓你的按鈕,像ArrayList<Button>,然後你可以通過說

for(Button button : buttonArrayList) 
    button.setClickable(false); 

但我是一個Android初學者自己,所以把我的提醒慎用。

+0

感謝您的回覆! ! – Ryan 2011-03-22 05:22:41