2012-05-02 18 views
0

私はカスタムイメージを持つ標準の黒の背景を交換しようとするが、私はそれを実装する方法をするなどわからないよいます...onDrawを使用したキャンバスへの背景イメージですか?

コード(onDrawメソッド):

@Override 
    protected void onDraw(Canvas c) { 
     //c.drawARGB(255, 0, 0, 0); 

     if (overlay.tick()) 
      if (!todraw.tick()) 
       mintercept.endGame(); 
     todraw.draw(c, Layer.BACKGROUND); 
     todraw.draw(c, Layer.CITIES); 
     todraw.draw(c, Layer.TRAILS); 
     todraw.draw(c, Layer.EXPLOSIONS); 
     todraw.draw(c, Layer.MISSILES); 
     todraw.draw(c, Layer.CHROME); 
     overlay.draw(c, Layer.CHROME); 
    } 

    public abstract void reset(); 
} 

コメント行黒い背景を担当していた(または私は信じていた...)。空白は私のカスタム背景画像の実装用に予約されています。どうすればいい?

答えて

0

キャンバスにはdrawBitmapというメソッドがあります:リソースからBitmapFactoryを使用して画像を取得して描画するとよいでしょう。

+0

画像はすべて表示されているわけではありません(あまりにも大きすぎますが、実際は画面と同じサイズです...)。それはまた、エミュレータのパフォーマンスを遅くするようです...それは物理的なデバイスに変換されますか? ちなみに、チップをありがとう。 – tadamson

+0

合理的に効率的でなければなりません。エミュレータはかなり遅いです。それはかなりの正確なサイズでレンダリングする必要があります:多分境界/余白/画面のパディング問題? – Femi