I am trying to do a toast from my rendering class.. What can I do to make it work? Here is my code (ive omitted irrelevant chunks) (My activity is called Game)
public class GRenderer extends Game implements Renderer
{
public void timer ()
{
Game.currentGameTime = System.currentTimeMillis();
Game.ellapsedTime = Game.currentGameTime - Game.gameStartTime;
if (Game.ellapsedTime > 10000)
{
// THIS IS WHEN The GAME SHOULD END
Toast.makeText(Game.context, "10Seconds", Toast.LENGTH_SHORT).show();
}
}
@Override
public void onDrawFrame(GL10 gl) // when drawing to screen
{
timer();
}
}
Here is my logcat:
12-13 17:14:59.856: E/AndroidRuntime(17521): FATAL EXCEPTION: GLThread 1323
12-13 17:14:59.856: E/AndroidRuntime(17521): Process: com.damienrenner.spacefruitshooter, PID: 17521
12-13 17:14:59.856: E/AndroidRuntime(17521): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
12-13 17:14:59.856: E/AndroidRuntime(17521): at android.os.Handler.<init>(Handler.java:200)
12-13 17:14:59.856: E/AndroidRuntime(17521): at android.os.Handler.<init>(Handler.java:114)
12-13 17:14:59.856: E/AndroidRuntime(17521): at android.widget.Toast$TN.<init>(Toast.java:327)
12-13 17:14:59.856: E/AndroidRuntime(17521): at android.widget.Toast.<init>(Toast.java:92)
12-13 17:14:59.856: E/AndroidRuntime(17521): at android.widget.Toast.makeText(Toast.java:241)
12-13 17:14:59.856: E/AndroidRuntime(17521): at com.damienrenner.spacefruitshooter.GRenderer.timer(GRenderer.java:278)
12-13 17:14:59.856: E/AndroidRuntime(17521): at com.damienrenner.spacefruitshooter.GRenderer.onDrawFrame(GRenderer.java:291)
12-13 17:14:59.856: E/AndroidRuntime(17521): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1523)
12-13 17:14:59.856: E/AndroidRuntime(17521): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
Thank you!
Logcat after Ken Wolf's implementation:
12-13 18:00:14.152: E/AndroidRuntime(18966): FATAL EXCEPTION: GLThread 1365
12-13 18:00:14.152: E/AndroidRuntime(18966): Process: com.damienrenner.spacefruitshooter, PID: 18966
12-13 18:00:14.152: E/AndroidRuntime(18966): java.lang.ClassCastException: android.app.Application cannot be cast to android.app.Activity
12-13 18:00:14.152: E/AndroidRuntime(18966): at com.damienrenner.spacefruitshooter.GRenderer.timer(GRenderer.java:279)
12-13 18:00:14.152: E/AndroidRuntime(18966): at com.damienrenner.spacefruitshooter.GRenderer.onDrawFrame(GRenderer.java:300)
12-13 18:00:14.152: E/AndroidRuntime(18966): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1523)
12-13 18:00:14.152: E/AndroidRuntime(18966): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
12-13 18:00:16.204: I/Process(18966): Sending signal. PID: 18966 SIG: 9