2011-04-20 36 views
0
Hi 

如何從OnDraw()方法繪製ImageView? canvas。()不必調用資源?OnDraw上的Android Draw ImageViiew

我試圖做到這一點

@Override  
    protected void onDraw(Canvas canvas) {   
      super.onDraw(canvas);   
     imageBack = BitmapFactory.decodeResource(getResources(), R.drawable.background);    

    canvas.drawBitmap(imageBack, (x /2)-15 ,y /2, null);   
    //touchEvents();   
    ImageView image1 = (ImageView)findViewById(R.id.ImageView01); 
    } 

回答

0

您需要將您的ImageView轉換爲位圖

ImageView image1 = (ImageView)findViewById(R.id.ImageView01); 
    image1.buildDrawingCache(); 
    Bitmap bmap = image1.getDrawingCache(); 

然後,您可以借鑑BMAP

+0

我上線image1的一個錯誤。 buldDrawCache();一個空指針異常::( – user710502 2011-04-20 05:30:42

+0

然後R.id.ImageView01不是您當前視圖中的可引用對象...您需要通過view.addView()添加它或從xml中將其添加,然後從您的膨脹視圖 – Joe 2011-04-20 05:38:32

+0

Omg膨脹對我來說是新的...,我會在哪裏添加該行代碼view.addView();在ondraw中? – user710502 2011-04-20 05:44:09