-1
我一直在試圖將兩個圖像視圖合併在一起以保存爲一個圖像,但我得到了這個遠,但是現在我得到一個錯誤。獲取錯誤,但不知道爲什麼
private View merge;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.camera_take);
merge = (View) findViewById(R.layout.camera_take);
}
public Bitmap combineImages(ImageView picPreview, ImageView spunkOverlay) {
Bitmap cs = null;
merge.setDrawingCacheEnabled(true);
merge.buildDrawingCache(true);
cs = Bitmap.createBitmap(merge.getDrawingCache());
Canvas canvas = new Canvas(cs);
merge.draw(canvas);
canvas.save();
merge.setDrawingCacheEnabled(false);
return cs;
}
的錯誤是:
02-14 20:09:47.943: E/AndroidRuntime(8450): FATAL EXCEPTION: main
02-14 20:09:47.943: E/AndroidRuntime(8450): java.lang.NullPointerException
02-14 20:09:47.943: E/AndroidRuntime(8450): at com.test.test.Camera.combineImages(Camera.java:170)
線170是:
merge.setDrawingCacheEnabled(true);
我真的不知道我要去哪裏錯在這裏。有任何想法嗎?
發佈您的camera_take xml文件。 – njzk2
當combineImages被調用? – njzk2
已經有答案了,但只是提到..如果你在任何對象上調用一個方法的行上得到一個空指針異常,在這種情況下在對象merge上調用'setDrawingCacheEnabled()',這意味着對象爲null,並且您無法在空對象上調用任何方法,因此您將得到空指針異常。這些類型的錯誤可以使用錯誤堆棧跟蹤進行解釋。 – spiderman