0
我需要将布局的内容保存到位图以供以后使用,但是,我面临的问题是所述布局比设备屏幕大。将比设备屏幕大的布局保存为位图
浏览通过计算器的问题,我已经来到了下面的代码:
private void viewToBitmap(View view) {
view.setDrawingCacheEnabled(true);
Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache());
view.setDrawingCacheEnabled(false);
String mPath = Environment.getExternalStorageDirectory().toString() + "/" + name + ".jpg";
File imageFile = new File(mPath);
FileOutputStream outputStream = new FileOutputStream(imageFile);
int quality = 100;
bitmap.compress(Bitmap.CompressFormat.JPEG, quality, outputStream);
outputStream.flush();
outputStream.close();
}
它的工作原理适用于那些比设备的屏幕大小相同或更小的布局,但是当我尝试将布局转换我需要的,我得到以下错误:
LinearLayout not displayed because it is too large to fit into a software layer (or drawing cache), needs 9334080 bytes, only 3686400 available
在所有这甚至可能还是我必须发挥创意,做类似的东西适应屏幕使用多个布局和保存到多个位图分别?