简单的介绍两个Drawable,合并成一张bitmap,至于有什么用跟使用场景,您看着办吧~
直接上代码:
public static Bitmap margeBitmap(Context context,int id1,int id2){
Bitmap backBitmap = Bitmap.createBitmap(BitmapFactory.decodeResource(context.getResources(),id1));
Bitmap foreBitmap = Bitmap.createBitmap(BitmapFactory.decodeResource(context.getResources(),id2));
Bitmap bitmap = Bitmap.createBitmap(backBitmap.getWidth(), backBitmap.getHeight(),backBitmap.getConfig());
Canvas canvas = new Canvas(bitmap);
canvas.drawBitmap(backBitmap, new Matrix(), null);
Matrix matrix = new Matrix();
matrix.postScale(0.5f,0.5f);
canvas.drawBitmap(Bitmap.createBitmap(foreBitmap,0,0,foreBitmap.getWidth(),foreBitmap.getHeight(),matrix,false), backBitmap.getWidth()-foreBitmap.getWidth(), backBitmap.getHeight()-foreBitmap.getHeight(), null);
backBitmap.recycle();
backBitmap=null;
foreBitmap.recycle();
foreBitmap=null;
return bitmap;
}
说明一下:上面是把id2 资源缩小一半后放到id1 的右下角
调用方法:
BitmapMarge.margeBitmap(mActivity,R.drawable.one,R.drawable.two);