안드로이드 시작 - 뷰(View)

Android 2015. 9. 28. 03:45

1. 뷰(View)의 개요

- 안드로이드 화면에서 실제로 사용되는 것은 모두  View 클래스에서 상속을 받으며, 이러한 클래스를 모두 '위젯'(또는 뷰)라    고 부른다

- 위젯 중에서 다른 위젯을 담을 수 있는 것들은 주로 ViewGroup클래스의 하위에 존재한다.

- 다음과 같이 다른 위젯을 담을 수 있는 클래스를 레이아웃이라고 한다.




- 계층도





2. 뷰(View)의 속성

1) id

- id속성은 모든 위젯의 고유한 아이디를 부여하는 속성으로 주로 Java코드에서 위젯에 접근할 때 사용된다

- id부여 : android:"@+id/btn1" (해당 위젯에 btn1이라는 아이디를 부여한다)                                                                                                              (자동완성에 @id 형식도 존재하지만 이녀석을 쓰면 되지 않는다/원인은 추후 공부해                                                     야될듯..)

-Java코드 : 위젯 변수 = (위젯 형)findViewById(R.id.위젯id);                                                                                                       (ex> Button btn1 = (Button)findViewById(R.id.btn1);)

-id는 반드시 필요하지 않다! , TextView 같이 단순히 문구를 출력하기 위한 위젯 경우 Java코드에서 따로 사용을 요구     하지 않으므로 궂이 아이디를 부여할 필요가 없다


2) layout_width, layout_height

- 위젯을 크기를 설정하는 속성으로 다양한 속성값을 가진다.

- 속성값 : match_parent(fill_parent) => 이름 그대로 자신의 부모에 폭이나 높이를 맞춘다는 의미 즉, 레이아웃의                                                                 폭이나 높이에 맞게 설정한다는 의미이다

wrap_content => 자신의 폭이나 높이를 자신 안의 글자가 꼭 들어갈 정도로 맞춘다는 의미

px : pixel(픽셀)을 나타내는 단위, 하드웨어적 요소를 고려하지 않고 정해져 있는 단위

in : inch(인치)를 나타내는 단위

mm : mm(미리미터)를 나타내는 단위

pt : point(포인트) 나타는 단위 = 1/72 inch

dp : 장치에 독립적인 픽셀의 수를 나타는 단위 = 160dpi 일때 1dp = 1px , dp = dpi/px                                        픽셀과 달리 비율로 계산되는 값으로 하드웨어가 달라지더라도 비율은 바뀌지 않는다는 점으로 주로 사         용된다

sp : 글자 크기에 맞춰서 크기를 조정하는 값

- 예제 : android:layout_width = "match_parent"    /    android:layout_width="50dp"                                                           android:layout_height="wrap_content"    /    android:layout_height="10px"

=> 각 속성값을 직접 넣어서 테스트 해보기!


3) background

- 위젯의 색상을 변경하는 속성

- #RRGGBB 값으로 변경하며 각 색의 값은 16진수 값으로 표현한다

- 예제 : android:background="#ff0000"    /    android:background="#00f109"

- Java코드에서도 변경 가능 : 위젯변수.setBackgroundColor(색깔번호);                                                                                                                 btn1.setBackgroundColor(Color.RED);


4) orientation

- 안드로이드 화면 방향을 설정하는 속성

- 이 속성은 위젯에 부여하지 않고 레이아웃에 부여하는 속성

- 속성값으로는 vertical, horizontal 이 주로 사용된다.

-예제 : android:orientation="vertical"


5) padding

- 위젯의 경계선으로부터 위젯 안의 내용물이 떨어지는 정도를 설정하는 속성, 즉 내용물과 경계선과의 거리를 설정한다

- 예졔 : android:paddingTop="30dp"    /    android:paddingLeft="10dp"


6) layout_margin

- 위젯과 위젯 사이의 거리를 설정하는 속성

- 위젯의 배치를 설정할 때 사용한다

- 예제 : android:layout_marginTop="25dp"       / android:layout_marginBottom="50dp"

7) visibility

- 위젯을 보일 것인지 여부를 결정하는 속성

- visible은 보이는 상태, invisible/gone은 보이지 않은 상태

- 예제 : android:visibility="visible"

- Java 코드 사용 : 위젯변수.setVisibility(android.view.View.속성);                                                                                                       ( ex > btn1.setVisibility(android.view.View.VISIBLE);)


]8) enabled

- 위젯의 작동 여부를 설정하는 속성

- 디폴트 값은 true이다.

- 예제 : android:enabled="false"(해당위젯은 동작하지 않는다)


9) clickable

- 위젯의 클릭이나 터치가 가능여부를 설정 하는 속성

- 디폴트 값은 true이다

- 예제 : android:clicable="false"


10) textColor

- 글자의 색상을 지정하는 속성

- 예제 :  android:textColor="#00ff00"


11) textSize

- 글자의 크기를 지정하는 속성

- 단위 : dp, px, in, mm, sp 단위

- 예제 : android:textSize="10dp"


12) typeface

- 글자의 글꼴을 지정하는 속성

- 디폴트 값은 normal

- 예제 : android:typeface="serif" 


12) typeStyle

- 글자의 스타일을 지정하는 속성

- 디폴트 값은 normal

- 예제 : android:typeStyle="bold|italic"


13) singleLine

- 글이 길어 줄이 넘어갈 경우 강제로 한줄까지만 출력하고 문자열의 맨뒤에 "...." 를 표시

- 디폴트 값은 false

-예제 : android:singleLine="true"


*더 많은 속성들이 존재하지만 나머지는 이클립스의 자동완성으로 그때그떄 필요한 속성값을 사용한다.

*사용법은 위의 내용만으로도 충분히 활용가능할 것이다.


*댓글과 좋아요는 저에게 큰 힘이 됩니다

'Android' 카테고리의 다른 글

Layout  (0) 2015.10.16
안드로이드 공부  (0) 2015.09.27