如果我的角色死亡/完成等级,我想添加“游戏结束”和“等级完成”消息。当他死亡/完成关卡时,现在发生的事情是我结束MainThread并启动EndScreen-activity / LevelComplete-activity。
但是在这些活动开始之前,我想要在屏幕上显示一条消息,最好是一张图片,这样我就可以添加一些很酷的文字,持续一段时间,让我们说3秒钟。
我是否真的需要为此启动类似于splash的活动或者timerTask,还是可以以更简单的方式完成?
示例:
if(characterHP <= 0){
stopUpdating();
showMessage(3, gameOverBitmap);
startEndScreenActivity();
答案 0 :(得分:1)
您还可以自定义标准Android Toast
通知的外观,文字,字体,位置,布局和时间(长或短)。 (通过提供自定义布局,样式或视图)。
http://developer.android.com/guide/topics/ui/notifiers/toasts.html
如果您想要更具可自定义的内容,您可以覆盖活动或对话框,甚至只是视图。但是,Toast
通知基本上是为此设计的。
答案 1 :(得分:0)
使用处理程序或类似的东西
if(characterHP <= 0){
stopUpdating();
showMessage(3, gameOverBitmap);
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
startEndScreenActivity();
}
}, 3000);
另一件事是,如果你跟踪游戏中的时间(我通常会这样做),以及增量时间,那么你可以自己制作一些变体
long showtime;
boolean Ending = false;
if(characterHP <= 0){
stopUpdating();
showMessage(3, gameOverBitmap);
showtime = sytem.gettimemillisecs();
Ending = true;
然后在其他地方:
if (Ending && System.gettimemilisecs > showtime + 3000) {
startEndScreenActivity();
}