본문 바로가기
개발 log (개발)/mobile

'커스텀갤러리' 구현을 위한 이론(ExternalStorage, DrawingCache)

by abbear25 2016. 9. 3.

ExternalStorage 경로정보 가져오기

 String externalPath = Environment.getExternalStorageDirectory().getAbsolutePath();

 

특정 화면영역 임시저장

 view.setDrawngCacheEnabled(boolean enable) 뷰가 업데이트 될 때마다 cache에 저장 유무

 view.buildDrawingCache() 뷰 이미지 cache에 저장(위 메소드가 true이면 사용할 필요 없음)

 view.getDrawingCache() cache에 저장된 이미지를 Bitmap으로 변환

Bitmap img = view.getDrawingCahce();

 

경로 상의 이미지 새롭게 저장

 1.FileOutputStream얻어오기

FileOutputStream output = new FileOutputStream(externalPath+파일명.jpg);

 

 2.img.compress(

포맷설정, //저장할 확장명 지정

화질설정, //0~100압축률 지정

output    //출력 스트림 지정

)

img.compress(Bitmap.CompressFormat.jpg, 80, output);

 

 

+코드상에서 EditText 포커스 없애기

  EditText.clearFocus();

반응형