긍정곰의 연구소

안드로이드 - XML View 속성 본문

긍정곰의개발일지/Android

안드로이드 - XML View 속성

긍정곰 2017. 10. 5. 21:48
뷰의 속성은 대부분의 뷰들이 가질수 있는 속성이다.

텍스트뷰나 버튼, 에디트, 레이아웃등 모든 뷰 혹은 위젯이라 불리우는 컨트롤이 이 뷰로부터 상속받기때문에 속성들은 그대로 가져간다.

내가 참고하는 책에서는 뷰와 위젯을 따로 구분지어 대개 위젯 = 버튼, 에디트, 텍스트뷰, 라디오등의 보이는 것, 뷰 = 위젯을 담는 컨테이너로서 보이지 않는 레이아웃 이라고 하는데 지금부터 언급하는 속성은 텍스트뷰나 에디트등 위젯에도 적용이 가능한 속성들이기 때문에 부모와 자식관계에 대해서만 어느정도 관념을 잘 익히고 있으면 될것으로 보인다.

이 글에서는 위젯과 뷰를 구분짓지 않고 뷰로 통합해서 지칭한다.

id : 뷰의 고유 이름으로 xml이나 java소스코드에서 참조할시에 사용할수있다.
주로 부모뷰와 자식뷰간의 통신을 위해 활용되며, Winapi로 치자면 핸들러개념으로 이해하면 쉬울듯하다.

사용예 id를 부여할시에
<TextView android:id="@+id/firsttext">

id를 코드에서 참조할시에

findViewById(R.id.firsttext);

layout_height : 뷰의 높이를 지정한다.
- match_parent : 부모뷰의 주어진 크기를 다 채운다.
- wrap_content : 자신의 내용물의 크기만큼만 채운다.

layout_width : 뷰의 폭을 지정한다
- match_parent : 부모뷰의 주어진 크기를 다 채운다.
- wrap_content : 자신의 내용물의 크기만큼만 채운다.

background : 뷰의 배경을 어떻게 채울것인가 지정한다.
색상값은 아래의 형태로 지정할수있다.
#RGB
#ARGB
#RRGGBB
#AARRGGBB
A = 알파, R = 레드, G = 그린, B = 블루

사용예
<Button android:background="#0000ff">

버튼뷰에 파란색으로 배경이 채워지게 된다 그외에 이미지를 불러와서 배경에 지정할수있는데 아래와 같이 하면 된다

<LinearLayout android:background="@drawable/pic.png">

padding : 뷰 자신과 자신의 차일드간 혹은 뷰가 담고있는 내용물간의 간격을 지정할수 있다.
paddingLeft, paddingRight, PaddingTop, PaddingBottom으로 개별간격을 지정하는것도 가능하다.

visibility : 뷰의 보임 상태를 지정할수 있다.
- visible : 보이는 상태(지정하지 않으면 디폴트로 이값을 사용한다)
- invisible : 숨겨진 상태이되 자리는 차지한다.
- gone : 숨겨진 상태이고 자리도 차지하지 않는다.

clickable : 클릭(터치)이벤트를 받을것인지 받지 않을것인지 지정할수 있다.
- true - false longClickable : 롱 클릭(터치시 홀드)이벤트를 받을것인지 받지 않을것인지 지정할수 있다.
- true - false focusable : 입력 포커스를 받을수 있는지를 지정한다.
에디트나 버튼은 기본적으로 true로 되어있다.
- true - false(지정하지 않으면 디폴트로 이값을 사용한다)


Comments