Android : Passing value to a drawText

on Tuesday, February 17, 2015


I want to have a random number then get the number and draw it on a canvas but I'm having an error on the drawText. this is my code



Random rand = new Random();
Intent game = new Intent(NewMainActivity.this, Game.class);
rand_num = rand.nextInt(20) + 1;


then on my GameView which is connected on Game Activity:



randomPortal1 = String.valueOf(main.rand_num);
canvas.drawText(randomPortal1, (mazeFinishX1 * totalCellWidth)
+ ((cellWidth * 0.25f) / 2), (mazeFinishY1 * totalCellHeight)
+ (cellHeight * 0.75f), ball);


my logcat:



02-17 18:42:34.937: E/AndroidRuntime(31250): FATAL EXCEPTION: main
02-17 18:42:34.937: E/AndroidRuntime(31250): java.lang.NullPointerException
02-17 18:42:34.937: E/AndroidRuntime(31250): at com.jonald.mazeonmath.GameView.onDraw(GameView.java:595)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.draw(View.java:13877)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.getDisplayList(View.java:12785)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.getDisplayList(View.java:12829)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.draw(View.java:13593)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.ViewGroup.drawChild(ViewGroup.java:3039)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2903)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.draw(View.java:13880)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.widget.FrameLayout.draw(FrameLayout.java:467)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.getDisplayList(View.java:12785)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.getDisplayList(View.java:12829)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.draw(View.java:13593)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.ViewGroup.drawChild(ViewGroup.java:3039)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2903)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.getDisplayList(View.java:12783)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.getDisplayList(View.java:12829)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.draw(View.java:13593)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.ViewGroup.drawChild(ViewGroup.java:3039)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2903)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.view.View.draw(View.java:13880)
02-17 18:42:34.937: E/AndroidRuntime(31250): at android.widget.FrameLayout.draw(FrameLayout.java:467)
02-17 18:42:34.937: E/AndroidRuntime(31250): at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:2226)


UPDATE



randomPortal1 = String.valueOf(main.rand_num); //Line 595


Those codes work but after I add the random number from string. I just got that error.


0 comments:

Post a Comment