从不扩展Activity的类调用活动

时间:2014-01-22 23:09:38

标签: java android android-activity real-time

有没有办法从不扩展Activity的东西中调用一个活动?没有在UI-tread上运行它。我想在我的游戏中加入toast-messages,就像在糖果粉碎中一样。但我不知道如何在实时期间以有效的方式调用toast-activity。

我知道你可以使用上下文并从中获取活动,但它运行得不是很顺利。有没有人有这方面的经验?

1 个答案:

答案 0 :(得分:1)

不得在UI线程之外使用

Toasts以及操纵用户界面的其他组件。

为了解决您的问题,您可以做的是在管理您游戏的线程和您的UI线程之间设计一个消息传递系统。为此,您可以使用Handler及其消息传递工具(sendMessagepostpostDelayed ...)来发送消息,甚至{{1}在你的主线程上运行。

如果在主线程中创建Runnables,它将自动将其自身与主线程的事件循环关联,从而使发送给它的每个工作都在主线程中执行。

您可以做的基本示例是:

Handler

作为简写,您也可以使用Activity.runOnUiThread(Runnable r)默认情况下在UI线程中执行给定的runnable。