본문 바로가기
Study/Android

android imageview

by Answer Choi 2015. 2. 12.
반응형



 예제 다운로드

 

이미지뷰에 사진을 띄우는 3가지 방법에 대해서 해보겠습니다.


첫번째는 카메라로 찍어서 띄우는 방법!!


두번째는 갤러리에서 사진을 가져와서 띄우는 방법!!


세번째는 그림을 drawable에서 직접 가져오는 방법!!


바로 실행하면 아래의 화면이 뜹니다.


먼저 이미지뷰 하나만 띄웠습니다.(계속해서 다른기능들을 업데이트 할 예정입니다;;)





 


화면을 클릭하라고 되어있네요.


클릭을 하시게 되면 alertDialog가 띄워집니다.



위 그림처럼 갤러리에서 가져올껀지, 기본이미지를 띄울껀지, 아님 사진을 찍어서 띄울건지를 물어봅니다.


다이얼로그 소스는 아래와 같습니다.


  1.         AlertDialog.Builder ad=new AlertDialog.Builder(this);
  2.         ad.setTitle("How to get picture?")
  3.                 .setMessage("Click to button!!")
  4.                 .setPositiveButton("Take a picture!",new DialogInterface.OnClickListener() {
  5.                     @Override
  6.                     public void onClick(DialogInterface dialog, int which) {
  7.  
  8.                         Intent intent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
  9.                         startActivityForResult(intent, intent_camera);
  10.  
  11.                     }
  12.                 })
  13.                 .setNegativeButton("Getting the Gallery!",new DialogInterface.OnClickListener() {
  14.                     @Override
  15.                     public void onClick(DialogInterface dialog, int which) {
  16.                         Intent intent=new Intent();
  17.                         intent.setAction(Intent.ACTION_GET_CONTENT);
  18.                         intent.setType("image/-");
  19.                         startActivityForResult(intent, intent_gallery);
  20.                     }
  21.                 })
  22.                 .setNeutralButton("Getting the basic image",new DialogInterface.OnClickListener() {
  23.                     @Override
  24.                     public void onClick(DialogInterface dialog, int which) {
  25.                         showPicture.setImageResource(R.drawable.click);
  26.                     }
  27.                 })
  28.                 .show();

카메라 찍는 부분은 라인 8~9부분이 카메라를 실행하는 인텐트입니다.


갤러리로 가는 부분은 라인 16~19부분으로 갤러리에서 image파일을 가져오는 부분입니다.


마지막으로 기본 drawable에 저장된 이미지를 가져오는 건 라인 25와 같이 setImageResource로 가져와서 


띄워줬습니다.


카메라와 갤러리에서 가져온 이미지는 startActivityForResult로 호출하여서 onActivityResult 메소드를 


override해서 가져와야 합니다.


값은 data.getData();를 하게되면 uri값을 가져오게 됩니다.


  1. Uri uri= data.getData();
  2. showPicture.setImageURI(uri);

그리고 setImageURI()로 가져온 이미지를 바로 띄울 수 있습니다.









반응형

인기글