前几天,和别人探讨问题的时候,突然了解到还有这个功能。他是要合成LinearLayout中的多个图片,如果图片合成,就很麻烦,所以直接保存一个LinearLayout。
现在想起来,保存LinearLayout也那样,因为LinearLayout也是一个view,我保存这个view难道不行?代码很简单。
public Bitmap createViewBitmap(View v) {
Bitmap bitmap = Bitmap.createBitmap(v.getWidth(), v.getHeight(),
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
v.draw(canvas);
return bitmap;
}
调用的时候,传入组件View 就可以了。
eg:
llMain.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Bitmap bitmap = createViewBitmap(v);
saveBitmap(bitmap);
}
});