개요
앨범에서 이미지를 선택하도록 액티비티를 호출하고 onActivityResult() 함수를 통해 해당 이미지에 접근하는 소스
앨범 호출 소스
[code lang="java"]
Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null);
intent.setType("image/*");
startActivityForResult(intent, 1004);
[/code]
선택된 이미지 가져오기 소스
[code lang="java"]
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1004 && resultCode == RESULT_OK) {
try {
Uri imageUri = data.getData();
Bitmap selPhoto = Images.Media.getBitmap(getContentResolver(), imageUri);
// 겔러리에서 받아온 이미지가 너무 크면 Out of Memory 가 발생함으로 1/4로 스케일 해준다.
Bitmap resized = Bitmap.createScaledBitmap(selPhoto, selPhoto.getWidth() / 4, selPhoto.getHeight() / 4, true);
// 축소한 이미지를 라운드 처리해주는 과정
Bitmap rectImage = BitmapHelper.getRoundedCornerBitmap(this, resized, 20);
ImageBox.setImageBitmap(rectImage);
ImageBox.setScaleType(ImageView.ScaleType.FIT_XY);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
[/code]
BitmapHelper 클래스는 해당 포스트를 참고하세요.
정말 감사합니다.
갤러리에서 이미지 불러와서 띄우는거 한참 고민했는데 덕분에 쉽게 해결했습니다.
새해복많이받으세요~