disegnare tela fc
-
28-10-2019 - |
Domanda
Ho una tela da disegno senza errori, ma mantiene la forza di chiusura. Non sono sicuro del motivo per cui è la chiusura della forza. Non so nulla delle tele se qualcuno potesse farmi grandi.
Registrare errori gatti
05-03 10:07:12.803: ERROR/AndroidRuntime(14042): FATAL EXCEPTION: Thread-9
05-03 10:07:12.803: ERROR/AndroidRuntime(14042): java.lang.NullPointerException
05-03 10:07:12.803: ERROR/AndroidRuntime(14042): at android.graphics.Canvas.throwIfRecycled(Canvas.java:954)
05-03 10:07:12.803: ERROR/AndroidRuntime(14042): at android.graphics.Canvas.drawBitmap(Canvas.java:980)
05-03 10:07:12.803: ERROR/AndroidRuntime(14042): at com.the.line.Panel.onDraw(Panel.java:59)
Questo è dalla riga 59 della mia classe di pannelli
canvas.drawBitmap(kangoo, 10, 10, null);
05-03 10:07:12.803: ERROR/AndroidRuntime(14042): at com.the.line.CanvasThread.run(CanvasThread.java:28)
Questo è dalla riga 28 della mia classe di canvashread
_panel.onDraw(c);
Ho trovato questo codice da un tutorial qui Se questo aiuta.
Soluzione 3
L'ho capito che il problema era nel mio setContentView
È stato impostato su 'setContentView (r.layout.main)' Witch Non sto usando alcun file XML in questo, quindi quando ho cambiato il SetContentView
a setContentView(new Panel(this,null));
Ha funzionato bene.
Altri suggerimenti
Guardando Canvas.java
private static void throwIfRecycled(Bitmap bitmap) {
if (bitmap.isRecycled()) {
throw new RuntimeException(
"Canvas: trying to use a recycled bitmap " + bitmap);
}
}
L'unico modo in cui questo lancerebbe un NPE è se Bitmap fosse nullo.
Puoi controllare per assicurarti che Kangoo non sia nullo?
Vedere più del codice sarebbe di aiuto, ma in base al tutorial a cui hai collegato, sembra che la tua risorsa di immagini non sia disponibile. Hai usato il R.drawable.kangoo
codice o hai fatto qualcos'altro?
Bitmap kangoo = BitmapFactory.decodeResource(getResources(),
R.drawable.kangoo);