UI 구성 요소 : View, ViewGroup, Layout
1. 뷰와 뷰그룹이란?
= 안드로이드 화면을 구성하는 요소로 view와 viewgroup이 있다. 안드로이드 앱을 실행시켰을 때 화면에 보이는 모든 요소는 뷰(view)라고 볼 수 있으며, 이러한 view를 담아 화면에 적절히 배치하기 위해 필요한 것이 뷰그룹(viewgroup)이다.
일반적으로 뷰 객체를 위젯, 뷰그룹 객체는 레이아웃이라고 한다.
- 뷰(view) : 안드로이드 화면에 보이는 각 요소들
- 뷰그룹(viewgroup) : 뷰를 포함하여 화면에 적절히 배치하기 위한 일종의 컨테이너

: 뷰라고 불리는 위젯들은 View 클래스를 상속받아 만들어진다. 그리고 뷰그룹이라고 불리는 레이아웃들은 ViewGroup 클래스를 상속받아 만들어진다.
그런데 ViewGroup 클래스는 View 클래스를 상속받고 있다. 따라서 뷰 그룹역시 일종의 뷰이므로, 그림과 같이 뷰와 함께 뷰 그룹안에 배치될 수 있다.
2. 뷰와 뷰그룹 종류
= 자주 사용되는 대표적인 뷰의 종류에는 TextView, EditText, Button, ImageView, CheckBox, RadioButton 등이 있으며,
= 뷰그룹(viewgroup)의 종류로는 LinearLayout, RelativeLayout, FrameLayout, TableLayout, GridLayout, ConstraintLayout 등이 있습니다.
1) 뷰의 종류
- TextView : 화면에 텍스트를 나타내는 뷰입니다.
- EditText : 앱의 사용자로부터 텍스트를 입력받을 수 있는 뷰입니다.
- Button : 이벤트 처리를 위한 클릭 기능이 포함되어 있는 뷰입니다.
- ImageView : 화면에 이미지를 나타내는 뷰입니다.
- CheckBox : 여러 항목 중 선택된 항목과 선택되지 않은 항목을 나타낼 수 있는 뷰입니다.
- RadioButton : 여러 항목중 한 가지 항목만 선택할 수 있는 뷰입니다.
- 기타
2) 뷰그룹 종류
- LinearLayout : 내부 뷰들을 가로방향 또는 세로방향 순서로 배치합니다.
- RelativeLayout : 내부 뷰들을 뷰들간 상대적인 위치에 따라 배치합니다.
- FrameLayout : 내부 뷰들을 중첩하여 배치할 때 사용됩니다.
- TableLayout : 내부 뷰들을 행과 열의 표형태로 배치합니다.
- GridLayout : 내부 뷰들을 격자 형태로 배치합니다.
- ConstraintLayout : 내부 뷰들의 크기와 위치를 다른 요소들과의 제약조건을 설정하여 배치합니다.
- 기타
UI는 이런식으로 구성해볼 수 있다.
이하는 카드를 구성해 뷰를 배치하는 연습을 하는 코드다. 시간이 날 때 하고 결과를 남길 계획이다.
앱 UI 디자인 코드
출처 ) https://kadosholy.tistory.com/127