2012-05-14 4 views
0

뷰를 확장하는 클래스가 있습니다 ... 두 비트 맵 이미지가 하나 이상 있음 ... 이 메신저에 대한이 드로어 블 이미지에 하나의 비트 맵 이미지로 변환하려고하지만 (..... 내가이가 노력하고있어 첫 번째 이상비트 맵 이미지를 드로어 블 이미지로 변환하여 다른 비트 맵 이미지 위에 표시 할 수 있습니다.

public class ShowCanvas extends View { 

Bitmap CanvasBitmap; 
Bitmap ScaledBitmap; 
Bitmap smallbitmap; 
private static final int INVALID_POINTER_ID = -1; 

private Drawable mImage; 
private float mPosX; 
private float mPosY; 

private float mLastTouchX; 
private float mLastTouchY; 
private int mActivePointerId = INVALID_POINTER_ID; 

private ScaleGestureDetector mScaleDetector; 
private float mScaleFactor = 1.f; 



public ShowCanvas(Context context) { 
    super(context); 
    // TODO Auto-generated constructor stub 

    ScaledBitmap = DrawView.scaled; 



**when i get the image from drawable it shows over the first one...** 

mImage =의 GetResources(). getDrawable을 보여 dsnt R.drawable.dress01);

하지만이 그것 dsnt를 사용하고있을 때 화상 표시 ...

mImage = 새로운 BitmapDrawable (의 GetResources() Dress.bitmap);

System.out.println("Drawable" + mImage); 



    int X = mImage.getMinimumWidth(); 

    int Y = mImage.getIntrinsicHeight(); 

    System.out.println(" Rough" + X + "\t" + Y); 


    mImage.setBounds(0, 0, mImage.getIntrinsicWidth(), 
      mImage.getIntrinsicHeight()); 

} 

public void setBitmap(Bitmap bitmap) { 
    // TODO Auto-generated method stub 
    CanvasBitmap = bitmap; 

    System.out.println("CanvasBitmap" + CanvasBitmap); 

    int X = CanvasBitmap.getHeight(); 
    int Y = CanvasBitmap.getWidth(); 

    System.out.println("CanvasBitmap " + X + "\t" + Y); 

} 



@Override 
protected void onDraw(Canvas canvas) { 
    // TODO Auto-generated method stub 
    Paint mpaint = new Paint(); 
    canvas.save(); 

    canvas.drawBitmap(ScaledBitmap, 0, 0, mpaint); 

    mImage.draw(canvas); 

    Log.i("Debug", "mImage.draw(canvas)"); 

    canvas.restore(); 

} 

}이 비트 맵 이미지를 그릴 수로 변환하는

답변

3
Drawable d =new BitmapDrawable(bitmap); 

사용.

관련 문제