2013-04-29 2 views
0
@Override 
protected void onDraw(Canvas canvas){ 
       super.onDraw(canvas); 
       Paint paint = new Paint(); 
       canvas.drawPaint(paint); 
       paint.setStyle(Paint.Style.FILL); 
       paint.setColor(Color.WHITE); 
       update(); 
       canvas.drawCircle(XC, YC, radius, paint); 
       } 

метод визуализации в SurfaceView Свернуть программу в первый раз - все нормально, когда разворачивается. Когда рефолдинга ошибкаОшибка SurfaceView

04-29 22:57:16.959: E/AndroidRuntime(4813): FATAL EXCEPTION: Thread-23150 

04-29 22:57:16.959: E/AndroidRuntime(4813): java.lang.NullPointerException 

04-29 22:57:16.959: E/AndroidRuntime(4813): at com.example.blindballtest.GameField.onDraw(GameField.java:10 1) 

04-29 22:57:16.959: E/AndroidRuntime(4813): at com.example.blindballtest.ThreadGame.run(ThreadGame.java:42) 

Скажите, пожалуйста, что не так и как это исправить?

Извините за мой английский.

ответ

0

попробовать этот код ...

@Override 
protected void onDraw(Canvas canvas){ 
      this.oDraw(canvas); 

      } 
private void oDraw(Canvas canvas){ 
Paint paint = new Paint(); 
      canvas.drawPaint(paint); 
      paint.setStyle(Paint.Style.FILL); 
      paint.setColor(Color.WHITE); 
      update(); 
      canvas.drawCircle(XC, YC, radius, paint); 
} 
+0

ругается на super.oDraw (холст); – Alexey