MA VPD Tech Blog.

Imageview에 image url로 실시간 이미지 가져오기

December 23, 2019 | 0 Minute Read

안드로이드의 기초(4)

**2019.12.23** 팀 : 콘텐츠보안팀 작성자 : 이상원

주제 : imageView에 image url로 실시간 이미지 가져오기.

1. imageView란?

가. 안드로이드 어플리케이션에서 image를 보여줄 수 있는 컴포넌트.

2. 권한 설정하기

< uses-permission android:name=”android.permission.INTERNET” /> 을 추가한다. 실시간으로 외부의 이미지를 가져오기 필요한 인터넷 권한이다.

3. 레이아웃 설정

해당 엑티비티 레이아웃에 ImageView 컴포넌트를 추가하여 준다.

< ImageView android:id=”@+id/backBtn” android:layout_width=”17dp” android:layout_height=”30dp” android:layout_marginLeft=”10dp” android:src=”@drawable/backbtn” android:layout_gravity=”center”/>

소스코드

.
final ImageView imageView = new ImageView(this);
   	new Thread(new Runnable() {
	public void run() {
    	Bitmap bm = null;
        Bitmap resize = null;
        try {
        	m = getBitmap(thumbnailUrl);
            resize = Bitmap.createScaledBitmap(bm, 300, 400, true);
        } catch (Exception e) {
   } finally {
    	 if (bm != null) {
         	 final Bitmap finalResize = resize;
             runOnUiThread(new Runnable() {
             	@SuppressLint("NewApi")
                public void run() {
                	imageView.setImageBitmap(finalResize);
                }
              });
          }
       }
     }
  }).start();

여기서 중요한 점은 기존 구버전에서는 디자인 UI와 인터넷 UI가 동기에 상관없이 사용되었지만 원할한 앱의 성능을 위해 실시간으로 이미지를 그려주는 경우 별도의 쓰레드를 생성해야 하는 정책을 따라 주어야한다.