1,簡要記錄問題,當(dāng)bitmap設(shè)置給imagview之后,假如bitmap對象被回收,imagview當(dāng)時不會有任何問題
但是當(dāng)頁面處于onpause狀態(tài)之后,imagview會重新申請他需要的bitmap對象,此時會出錯。
2,bitemap的旋轉(zhuǎn)代碼,獲取設(shè)備的旋轉(zhuǎn)角度,并進行相應(yīng)的旋轉(zhuǎn)
public static Bitmap rotatePhotos(Bitmap bitmap, int rotate){
if(bitmap!=null){
Matrix m=new Matrix();
try{
m.setRotate(rotate, bitmap.getWidth() / 2, bitmap.getHeight() / 2);
Bitmap bmp2=Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(), bitmap.getHeight(), m, true);
bitmap.recycle();
bitmap=bmp2;
}catch(Exception ex){
LogUtil.e("tag","出錯");
}
}
return bitmap;
}
3,了解發(fā)現(xiàn)github上的知名來源項目,stickcamera,在拍完照片之后,會持續(xù)寫入bitmap到文件再跳轉(zhuǎn)到照片的編輯頁面,這個過程是卡頓的用戶體驗不流暢的,包括最近比較火的應(yīng)用keep也是一樣的實現(xiàn)。最讓人感受到費解的是包括足記和keep他們都會在編輯之前將圖片寫入到文件,編輯之后又將新的圖片生成到了文件,這樣的方式無非是要減少用戶的存儲空間
4,足記的拍照頁面到編輯頁面是瞬間完成的。這種實現(xiàn)方式用bundle傳送的方式顯然是不可能的,具體如何實現(xiàn)還要具體分析。