【发布时间】:2011-09-04 11:03:12
【问题描述】:
我正在尝试显式启动新 Activity 的意图,但我希望当前 Activity 中的一些代码首先完成执行。我已经做了一些研究,并且有一些想法来实现这一点,但我在想“必须有一种更简单的方法来做到这一点”。这是相关的代码块:
cpuToast(dmg);
if (player_.getStatus() == false)
{
playerWon_ = false;
Intent intent = new Intent(Main.this, Death.class);
startActivity(intent);
}
dmg 是一个整数。 cpuToast 只是简单地创建一个字符串来显示损坏,然后调用 show()。 getStatus() 返回玩家是否被杀死。如果玩家被杀,我会启动一个新意图,播放玩家死亡的动画。不幸的是,“死亡”活动在 Toast 变得可见之前就启动了,然后它在我不想要的死亡活动期间变得可见。
有没有人知道一种简单的方法来确保 Toast 在启动 Death Activity 之前完全执行?从我的发现看来,我必须创建一个“Timer”对象,而我真正想要的只是一个简单的 while 循环,如“while(Toast.isVisable) {}”,以将执行捆绑几个秒。
【问题讨论】:
标签: android android-activity timing toast