Chap4. 안드로이드 인터페이스 기초01 - 뷰(View)
앱의 하나의 화면은 하나의 Activity가 관리하며, 화면은 ViewGroup과 Widget으로 구성된다.
ViewGroup, Widget ⊂ View
Activity
: .java와 .xml 파일을 포함하며 .xml파일에는 view의 정의가 담겨있다.
View
: 컨트롤이나 위젯이라는 이름으로 불리는 UI 구성요소로 사용자의 눈에 보이는 화면의 구성요소들이다.
Widget
: 화면 입출력 요소를 표현하는 View. 일반적인 컨트롤 역할 (보여지는 것들).
*https://developer.android.com/reference/android/widget/package-summary (밑에 있는 것들이 대표적)
//위 표는 상속관계를 나타낸 표로 ←upcasting / downcasting→
//CheckBox는 다중선택가능, RadioButton은 택1
+) View는 주로 XML로 선언하나 java code에서 직접 작성도 가능하다.
++) 위젯은 class로 존재할 수 없으나, 뷰그룹은 class로 존재할 수 있다. (class라는 표현이 맞는지는 모르겠다) 그러므로 widget안에 widget을 넣을 때는 그 사이에 viewgroup이 있어야 한다는 말.
: 특정 뷰를 참조하기 위한 식별정보
; 뷰 객체의 메모리 상 포인터 같은 개념으로 생각할 수 있다.
ex. TextView의 id
<Design 창일 경우>
Arributes에서 id를 찾아 기입.
<XML 창일 경우>
<TextView
android:id="@+id/textView1"/>
//@뒤에 +는 id를 새로 지을 때만 붙인다
: 뷰 그룹 안에서의 크기 지정.
; 상수값, match_parent나 wrap_content를 이용할 수 있다.
match_parent
: view를 담겨 있는 뷰그룹 크기에 맞춘다. (여유공간만큼 늘림)
wrap_content
: 담고 있는 항목의 크기에 맞춘다.
: 뷰와 내용물 사이의 간격
ex. 버튼 안의 텍스트. 버튼 테두리와 텍스트 사이의 간격.