我試圖將線性佈局轉換爲位圖。但它會給出一個空指針異常。我的代碼是。從線性佈局獲取位圖時的空指針
位圖爲空。因爲我沒有得到「不空」的敬酒。 爲什麼我得到的位圖爲null。我已經嘗試了很多類似的問題,但代碼也是一樣的。
public class Receipt extends Activity {
public Bitmap bitmap;
LinearLayout layout;
private String fileName;
private File file;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.receipt);
ImageView iv = (ImageView) findViewById(R.id.Ivsignature);
iv.setImageBitmap(Signature.sign);
layout = (LinearLayout) findViewById(R.id.Llreceipt);
layout.setDrawingCacheEnabled(true);
layout.buildDrawingCache();
bitmap = layout.getDrawingCache(true);
if (bitmap != null)
Toast.makeText(getApplicationContext(), "not null",
Toast.LENGTH_LONG).show();
String myPath = Environment.getExternalStorageDirectory()
+ "/signature_image";
File myDir = new File(myPath);
try {
myDir.mkdirs();
} catch (Exception e) {
}
String fname = fileName + "gwg" + ".jpg";
file = new File(myDir, fname);
FileOutputStream fos = null;
try {
fos = new FileOutputStream(file);
bitmap.compress(CompressFormat.JPEG, 100, fos);
Toast.makeText(getApplicationContext(), "File saved",
Toast.LENGTH_LONG).show();
} catch (Exception e) {
Toast.makeText(getApplicationContext(), String.valueOf(e),
Toast.LENGTH_LONG).show();
}
}
}
這億韓元沒有使用硬件加速,因爲drawingCache沒有使用,然後 –
無處指定,他需要在:) –
非常真實,只是想補充說,以防萬一誰讀這遇到這樣的問題 –