반응형

1. 벡터 드로어블(Vector Drawables) 이란.

 

   XML 파일에서 연관된 색상 정보와 함께 점, 선, 곡선의 조합으로 정의되는 벡터 그래픽

   (developer.android.com/guide/topics/graphics/vector-drawable-resources?hl=ko)

 

벡터 드로어블 개요  |  Android 개발자  |  Android Developers

이 문서에서는 프레임워크 API 또는 지원 라이브러리를 통해 벡터 드로어블 리소스의 전반적인 사용을 설명합니다.

developer.android.com

2. 장점

  - 벡터 드로어블의 좋은점은 품질을 잃지 않고 확장 할 수 있다.
  
3. 단점

  - API 버전 21 이상에서 지원.
  - API 버전 21 이하는 안드로이드가 빌드될때, API 21 이하 버전을 위한 PNG도 같이 만들어진다.
  - API 버전 21 이하 버전을 위해서 PNG가 만들어지기 때문에, 설치 파일 용량이 커지는 단점이 있다.
  
4. 단점을 해결하기 위한 위한 방법

  * androidX 를 지원한다면 API 7 레벨부터 지원되도록 만들 수 있다.

 

  1) build.gradle(module:app)

android {
    ...
    vectorDrawables.useSupportLibrary = true;
}

 

  2) layout/activity_main.xml

    <layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto">
	 
	   ....
       <!--
       		ImageView 속성을 
       		android:src="@drawable/empty_dice"
       		에서
       		app:srcCompat="@drawable/empty_dice"
       		을 사용 하도록 한다.
       -->
	   <ImageView
            android:id="@+id/dice_image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            app:srcCompat="@drawable/empty_dice"
            tools:src="@drawable/dice_1" />
	   ....
	 
	</layout>
반응형