SORU
20 NİSAN 2011, ÇARŞAMBA


Android, tuval: (Nasıl sil içindekiler) tuval (= bitmap), bir surfaceView yaşayan temizlerim?

Basit bir oyun yapmaya çalışıyorum.

(Ve kullanmak koymak) böyle bir bit eşlem: bir tuval çeken bir şablon buldum

private void doDraw(Canvas canvas) {
    for (int i=0;i<8;i  )
        for (int j=0;j<9;j  )
            for (int k=0;k<7;k  )   {
    canvas.drawBitmap(mBits[allBits[i][j][k]], i*50 -k*7, j*50 -k*7, null); } }

(Tuval tanımlanır "() Çalıştır" SurfaceView bir GameThread yaşıyor.) /

Şimdi:

Nasıl (ya da yeniden düzenleme) yeni bir düzen (= oyunda denemek için TÜM tuval temizlerim ?
Ve nasıl ekranın sadece bir bölümünü güncelleyebilir miyim ?


Benim için daha çok pragmatik bir ipucu için TEŞEKKÜRLER!

(Stackoverflow de konuları gezerken bir sürü insan cevap...) duymak ister sanırım

// This is the routine that calls "doDraw":
public void run() {
    while (mRun) {
        Canvas c = null;
        try {
            c = mSurfaceHolder.lockCanvas(null);
            synchronized (mSurfaceHolder) {
                if (mMode == STATE_RUNNING) 
                    updateGame();
                doDraw(c);          }
        } finally {
            if (c != null) {
                mSurfaceHolder.unlockCanvasAndPost(c);  }   }   }       }

CEVAP
4 HAZİRAN 2012, PAZARTESİ


PorterDuff net modu ile şeffaf renk çizmek yok istediğim için hile.

Canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Eddie Bravo

    Eddie Bravo

    17 EKİM 2006
  • FailArmy U

    FailArmy U

    29 AĞUSTOS 2009
  • Major FX

    Major FX

    6 HAZİRAN 2012