티스토리 뷰

Android

Tools attributes

parkho79 2018. 11. 7. 11:46
300x250
300x250



이번 포스팅에서는 android studio 에서 layout 작업을 하면서 많이 만나는 tools 속성에 관해 소개한다.

 

Ref

영문의 압박이 있지만 구글에서 설명한 tools attribute 에 대한 설명도 참조해보자

 

Error handling attributes

tools:ignore

지정한 lint error 를 무시한다.

예를들어, 하단과 같이 설정하면 다국어 관련 lint error 가 발생하지 않는다.

하지만 가급적 lint error 를 생략하지 말자!!



tools:targetApi

Java code 의 @TargetApi 와 같은 역할을 한다.

예를들어, 하단과 같이 targetApi 를 14로 설정하면 14 이상에서만 동작하도록 유도할 수 있다.



tools:locale

Resource element 의 default lang 을 설정한다. (기본은 영어다.)

예를들어, 하단과 같이 설정하면 스페인어라 발생하는 스펠링이 틀렸다는 안내(spell checker)를 피할 수 있다.



Design-time-view attributes

tools:context

해당 view element 가 어떤 activity 와 연관이 있는지 설정한다.

예를들어, 하단과 같이 activity 를 명시하면 관련 작업에 편의를 제공한다.

 

'onButtonClicked' 라는 함수를 MainActivity 에 생성할지 추천창에 띄어준다.

 

 

tools:itemCount

Android studio preview 에서 나타날 item 개수를 설정한다.

예를들어, 하단과 같이 RecyclerView 에 itemCount 를 명시하면 preview 에 3 개의 item 을 보여준다.



tools:layout

Android studio preview 에서 나타날 fragment 에 보여주려는 layout 을 설정한다.



tools:listitem / tools:listheader / tools:listfooter

Android studio preview 에서 나타날 list item 에 보여주려는 layout 을 설정한다.



tools:showIn

Android studio preview 에서 나타날 item 의 parent layout 을 설정한다.

tools:Listitem 과 반대의 개념이다.



tools:menu

Android studio preview 에서 나타날 app bar 에 표시될 메뉴를 설정한다.



tools:minValue / tools:maxValue

Android studio preview 에서 나타날 NumberPicker 의 최소/최대 값을 설정한다.



tools:openDrawer

Android studio preview 에서 나타날 DrawLayout 을 설정한다.

start/end/left/right 값을 설정할 수 있다.



Resource shrinking attributes

사용하지 않는 resource 를 축소시킬 때 사용한다.

Resource shrinking 은 code shrinking 과 함께 동작한다.

 

상세설명은 하단을 참조하자


tools:shrinkMode

확실히 사용하는 resource 만 유지하기 위해서는 shrinkMode 를 "strict" 로 설정한다.

기본값은 "safe" 이다.



tools:keep / tools:discard

Shrink 를 이용하여 리소스를 축소하고 싶지만 특정 리소스를 유지하거나 제거 하고 싶은 경우 keep 과 discard 를 설정할 수 있다.



728x90

'Android' 카테고리의 다른 글

화면 캡쳐 방지  (0) 2018.12.06
String.xml 에서 format(%d, %s) 사용하기  (0) 2018.11.27
Permission 없이 사진 촬영하기  (0) 2018.10.31
Version code vs version name  (0) 2018.08.17
Android API level (SDK version list)  (0) 2018.08.16
댓글