반응형

 

안드로이드 - 꼭 알아야 하는 View의 상속도와 기본 속성들

 

 

   목차

  1. View의 상속도
  2. View의 기본속성들
    1. 뷰의 색상 및 이미지 관련
    2. 뷰의 기능 관련
    3. 뷰의 크기 관련
    4. 뷰의 여백 관련

 

 

1. View의 상속도

 

안드로이드에서 화면을 구성할 때 가장 흔하게 접하게 되는 TextView, ImageView, Button, EditText 그리고 ViewGroup까지 대부분의 위젯들은 아래 그림에서와 같이 직간접적으로 View 클래스를 상속받고 있습니다. 따라서 View 객체가 가지고 있는 기본적인 속성들에 대해서 알고 있으면 각 위젯을 사용할 때 많은 도움이 됩니다. 

 

뷰의 상속도 (view의 상속도)
View(뷰)의 상속도

 

 

 

2. View의 기본속성들

 

View 클래스에 포함된 속성은 매우 많습니다. 따라서 여기서는 자주 사용되거나 알아둘만한 속성을 중심으로 소개하도록 하겠습니다. 

 

1)  뷰의 색상 및 이미지 관련

  1. android:background : 배경에 사용될 색상이나 이미지를 지정할 수 있습니다.
  2. android:backgroundTint : 배경에 적용할 색조를 지정합니다. 
  3. android:backgroundTintMode : backgroundTint를 적용하는데 사용되는 블렌딩 모드를 지정합니다. 
  4. android:foreground : 전경에 사용될 색상이나 이미지를 지정할 수 있습니다.
  5. android:foregroundGravity : 전경의 위치 지정을 위한 중력방향을 지정합니다. 
  6. android:foregroundTint : 전경에 적용할 색조를 지정합니다. 
  7. android:foregroundTintMode : foregroundTint를 적용하는데 사용되는 블렌딩 모드를 지정합니다. 
  8. android:alpha : 뷰의 투명도를 지정합니다. (0~1)
  9. android:clipToOutline : 뷰에 적용된 Outline을 따라 뷰의 컨텐츠를 잘라낼것인지를 지정합니다. (true or false)
  10. android:elevation : 뷰의 z깊이를 지정하여 그림자 효과를 나타냅니다. 

 

2) 뷰의 기능관련

  1. android:id : 해당 뷰의 id를 지정합니다. 
  2. android:tag : 뷰에 문자열을 포함하는 태그를 지정합니다. 
  3. android:tooltipText : 해당뷰를 오래 누르고 있으면 툴팁으로 보여줄 텍스트를 지정합니다. 
  4. android:visibility : 뷰의 visibility를 지정합니다. (visible, invisible, gone)
  5. android:focusable : 해당 뷰가 focus를 가질수 있는지 여부를 지정합니다. 
  6. android:focusableInTouchMode : 해당 뷰가 터치모드에서 focus를 가질수 있는지 여부를 지정합니다. 
  7. android:focusedByDefault : 해당 뷰가 focus를 받는 default 뷰로 지정합니다. 
  8. android:onClick : 해당 뷰를 클릭했을 경우 클릭이벤트의 메소드 이름을 지정합니다. 
  9. android:clickable : 클릭 이벤트에 반응할지 여부를 지정합니다. (true or false)
  10. android:longClickable : 롱클릭 이벤트에 반응할지 여부를 지정합니다. 
  11. android:saveEnabled : 뷰 상태를 저장할 것인지를 지정합니다. 
  12. android:soundEffectsEnabled : 클릭이나 터치와 같은 이벤트가 발생했을 때 사운드 효과를 사용할지 여부를 지정합니다. 
  13. android:scrollX : 수평 방향 스크롤의 초기위치를 pixel 단위로 지정합니다. 
  14. android:scrollY : 수직 방향 스크롤의 초기위치를 pixel 단위로 지정합니다. 

 

3) 뷰의 크기 관련

  1. android:minHeight : 뷰의 최소 높이를 지정합니다. 
  2. android:minWidth : 뷰의 최소 넓이를 지정합니다. 
  3. android:rotation : 뷰를 지정한 각도만큼 회전시킵니다. 
  4. android:rotationX : 뷰를 x축을 중심으로 지정한 각도만큼 회전시킵니다. 
  5. android:rotationY : 뷰를 y축을 중심으로 지정한 각도만큼 회전시킵니다. 
  6. android:scaleX : x축 방향으로 크기를 늘립니다. 
  7. android:scaleY : y축 방향으로 크기를 늘립니다. 

 

4) 뷰의 여백 관련

  1. android:padding : 뷰의 내부 여백을 지정합니다. (상하좌우 적용됨)
  2. android:paddingTop : 뷰의 위쪽방향 내부 여백을 지정합니다. 
  3. android:paddingBottom : 뷰의 아래쪽방향 내부 여백을 지정합니다.
  4. android:paddingLeft : 뷰의 왼쪽방향 내부 여백을 지정합니다. 
  5. android:paddingRight : 뷰의 오른쪽방향 내부 여백을 지정합니다. 
  6. android:paddingStart : 뷰의 시작방향 내부 여백을 지정합니다. 
  7. android:paddingEnd : 뷰의 끝방향 내부 여백을 지정합니다. 
  8. android:paddingHorizontal : 뷰의 왼쪽과 오른쪽방향의 내부 여백을 지정합니다. 
  9. android:paddingVertical : 뷰의 위쪽과 아래쪽방향의 내부 여백을 지정합니다. 
  1. android:layout_margin : 뷰의 외부 여백을 지정합니다. (상하좌우 적용됨)
  2. android:layout_marginTop : 뷰의 위쪽방향 외부 여백을 지정합니다. 
  3. android:layout_marginBottom : 뷰의 아래쪽방향 외부 여백을 지정합니다.
  4. android:layout_marginLeft : 뷰의 왼쪽방향 외부 여백을 지정합니다. 
  5. android:layout_marginRight : 뷰의 오른쪽방향 외부 여백을 지정합니다. 
  6. android:layout_marginStart : 뷰의 시작방향 외부 여백을 지정합니다. 
  7. android:layout_marginEnd : 뷰의 끝방향 외부 여백을 지정합니다. 
  8. android:layout_marginHorizontal : 뷰의 왼쪽과 오른쪽방향의 외부 여백을 지정합니다. 
  9. android:layout_marginVertical : 뷰의 위쪽과 아래쪽방향의 외부 여백을 지정합니다. 

 

cf)  margin의 경우 View의 XML 속성에 정의되어 있지 않고 ViewGroup.MarginLayoutParams에 따로 정의되어 있으나 편의상 함께 정리하였습니다. 

반응형

+ Recent posts