Autore Topic: Impostare una bitmap come sfondo da un thread  (Letto 640 volte)

Offline breakdom

  • Nuovo arrivato
  • *
  • Post: 23
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsun Galaxy S2
Impostare una bitmap come sfondo da un thread
« il: 20 Settembre 2014, 23:39:17 CEST »
0
Buonasera a tutti,
ho scaricato un sample code che imposta un colore di sfondo ad una view in questo modo :

....
 if (canvas != null) {
    synchronized (surfaceHolder) {
    canvas.drawARGB(255, 255, 255, 255);   
     }   
}
....

al posto di questo vorrei impostare un file di sfondo attraverso questo comando :

   Bitmap mFinalbitmap= BitmapFactory.decodeResource(getResources(), R.drawable.sfondo);
   canvas.drawBitmap(mFinalbitmap, 0, 0, null);

ma il metodo "getResource()" non viene riconosciuto, ho provato ad aggiungere un getApplicationContext() davanti ma non va.

Mi trovo all'interno di un thread "public class GameThread implements Runnable", se provo a settare lo sfondo altrove questo prende il livello superiore e non si vedono piu' gli altri componenti del gioco.

E' possibile farlo nel thread ? Come potrei fare altrimenti?





Post unito: [time]21 Settembre 2014, 01:31:26 CEST[/time]
Ho risolto così in  "public class GameSurfaceView extends SurfaceView implements OnTouchListener, SurfaceHolder.Callback {" :

Bitmap sfondo = BitmapFactory.decodeResource( getResources(),  R.drawable.sfondo_hd);
gameThread = new GameThread(getHolder(), projectileManager, gameOverListener, sfondo);


e poi nel thread :

canvas.drawBitmap(bg,0,0, null);

Post unito: 21 Settembre 2014, 01:32:12 CEST
ovviamente sfondo corrisponde a bg nel thread.
« Ultima modifica: 21 Settembre 2014, 01:32:12 CEST da breakdom, Reason: Merged DoublePost »