[ ✨View ]
1. TextView
- 텍스트를 표시한다.
▶ 속성
- text: 내용
- textStyle: 문자열의 스타일 (예: normal, bold, italic)
- typeFace: 문자열의 폰트 (예: normal, sans, serif)
- textColor: 문자열의 색상
- textSize: 문자열의 크기 (단위: dp, sp, px)
- maxLines: 문자열의 최대 줄 수. 넘어가는 부분은 표시되지 않음.
- ellipsize: maxLines와 같이 사용함. 문장이 잘리면 ...를 붙여줌. end는 뒤, start는 앞, middle은 중간.
- autoLink: text 속성에 적힌 문자열에 autoLink에 넣어준 종류(예: web, email, phone)의 링크가 존재한다면, 하이퍼링크처럼 누를 수 있게 변경됨.
2. Button
- 사용자가 탭 또는 클릭하여 작업을 수행할 수 있도록 함
- TextView를 상속하기 때문에 TextView에 사용되는 대부분의 속성을 그대로 사용 가능
▶ 속성
- text: 내용
- drawableLeft: 아이콘
- onClick: 클릭 이벤트 핸들러 정의(레이아웃을 호스팅하는 Activity에 구현된 메서드)
- style: 버튼 스타일
3. ImageView
- 이미지 리소스(예: Bitmap, Drawable 리소스)를 표시
- 일반적으로, 이미지에 색조를 적용하고 이미지 크기 조정을 처리
▶ 속성
- src: 화면에 표현할 이미지 설정(경로)
- maxWidth, maxHeight: 화면에 출력되는 이미지 최대 크기. 이미지 비율을 지켜주지는 않음
- adjustViewBounds: 크기를 변경할 때, 이 속성을 true로 설정하면 가로세로 비율을 유지함
- tint: 이미지에 색 필터를 입힘
- scaleType: ImageView 크기를 고정했을 때, 이미지 크기에 따라 이미지가 잘리거나, 작게 표시되는 등의 설정
4. ScrollView
- 그 안에 배치된 요소들을 스크롤할 수 있도록 함.
- ScrollView는 자식을 하나만 가짐
▶ 속성
- scrollbars: 스크롤바 유무
- overScrollMode: 스크롤을 넘어서 움직일 때 어떻게 처리할 것인지
- fillViewport: ScrollView 안에 layout이 꽉차지 않을 때, 해당 속성을 true로 주면 꽉 차게 됨.
- scrollbarStyle: 스타일 지정 (예: insideOverlay, insideInset)
5. RecyclerView
- 대량의 데이터 세트를 효율적으로 표시할 수 있음.
- ListView와 달리 항목이 스크롤되어 화면에서 벗어나더라도 View를 제거하지 않고 재사용함.
- View의 재사용으로 앱의 응답성을 개선하고, 전력 소모를 줄여 성능을 개선
▶ 속성
- overScrollMode: 스크롤을 끝까지 내렸을 때 나타나는 효과
- clipToPadding: 상하 스크롤시 상하 패딩값 유무 (false: 패딩 대신 아이템의 공간으로 활용)
6. FragmentContainerView
- Activity에서 Fragment를 호스팅하는 데 사용
7. Switch
- 두 가지 옵션 중 하나를 선택할 수 있는 Toggle Switch
▶ 속성
- showText: text가 보일지 말지를 결정
- thumbTextPadding: Switch Caption과 Thumb 사이의 간격
- switchMinWidth: 스위치의 최소 너비
- switchPadding: Switch Caption과 스위치 사이의 간격
- switchAppearance: on/off Text의 스타일 지정
- textOff: off 상태일 때 표시될 텍스트
- textOn: on 상태일 때 표시될 텍스트
- textStyle: 텍스트 스타일
- thumb: 사용자 드래그를 통해 on/off 설정이 가능하도록 하는 thumb 모양
- thumbTint: thumb 색상
8. ImageButton
- Image로 이루어진 버튼
- 속성은 ImageView와 유사
9. ChipGroup & Chip
- 키워드, 카테고리, 요소, 타입 등을 표현할 때 타원형의 Background에 텍스트를 표현하곤 하는데, 이를 구현할 수 있는 것.
- ChipGroup은 다수의 Chip을 관리함.
▶ Chip 속성
- chipMinHeight: Chip 버튼의 높이
- chipStartPadding&chipEndPadding: 각각 Chip 버튼의 좌우 패딩값
- chipStrokeWidth&chipStrokeColor: 각각 테두리의 굵기와 색상
- chipBackgroundColor: Chip 버튼의 배경색
▶ ChipGroup 속성
- chipSpacingHorizontal: Chip 버튼 간의 Horizontal 거리 설정
- singleSelection: true 값을 주면, Group 내에 포함된 Chip 중 하나만을 선택할 수 있게 함.
10. CheckBox
- 클릭 이벤트에따라 선택됨, 선택되지 않음의 상태를 표시
▶ 속성
- text: 내용
- onClick: 클릭 이벤트 핸들러 정의(레이아웃을 호스팅하는 Activity에 구현된 메서드)
11. RadioGroup & RadioButton
- 여러 옵션 중 한 가지 옵션을 선택할 수 있도록 함.
- RadioGroup은 RadioButton들을 그룹화함.
▶ 속성
- text: 내용
- onClick: 클릭 이벤트 핸들러 정의(레이아웃을 호스팅하는 Activity에 구현된 메서드)
- orientation: horizontal 또는 vertical로 정렬
12. FloatingActionButton
- 화면에 떠있는 원형의 버튼
- 기본적으로 ImageView를 상속받기 때문에, 버튼에 표현할 아이콘 지정 가능
▶ 속성
- srcCompat: Icon 지정
- backgroundTint: 버튼의 색상 지정
- fabSize: 사이즈 (예: auto, mini, normal)
- onClick: 클릭 이벤트 처리를 위한 핸들러(레이아웃을 호스팅하는 Activity에 구현된 메서드)
13. WebView
- 웹페이지를 보여줌
▶ 속성
- focusable
- focusableInTouchMode: 항시 포커스를 가져가서, 사용자가 어떤 입력을 했든 먼저 반응하게 함.
14. ProgressBar
- 어떤 작업이 수행될 때, 작업의 진행 상태를 시각적으로 보여줌
▶ 속성
- max: 값의 최대 범위
- progress: 현재 진행 값
15. SeekBar
- 범위 내에서 값을 선택할 수 있는 막대 형태의 뷰 (음향, 밝기 조절 등에 이용)
▶ 속성
- max: 최대값 설정
- thumb: 기본으로 선택되는 값
16. Spinner
- 갑 집합에서 하나의 값을 선택할 수 있음.
▶ 속성
- spinnerMode: 스피너에 설정된 문자열을 어떻게 보여줄지 지정. dropdown: 문자열이 위에서 아래로 펼쳐짐. dialog: 문자열이 화면 중앙에 보임.
- popupBackground: 리스트가 보이는 화면의 배경색
17. HorizontalScrollView
- 수평 스크롤뷰
- 내부에 한 개의 뷰만 넣을 수 있음.
▶ 속성
- fillViewport: 스크롤뷰가 viewport를 채우기 위해 콘텐츠를 늘려야 하는지 여부
18. NestedScrollView
- ScrollView와 같지만 중첩 스크롤 부모와 자식 역할을 지원
- ScrollView 안에 recyclerview를 사용하면 스크롤을 내릴 때 recyclerview의 내용이 다 스크롤 되어야 전체 화면을 스크롤할 수 있는데, 이런 문제를 해결하고자 할 때 NestedScrollView를 사용함
'Programming > Android' 카테고리의 다른 글
[UMC 3rd/Android] 파파고 UI 구현 (xml) (0) | 2022.10.11 |
---|---|
[UMC 3rd/Android] 주요 Layout (0) | 2022.09.28 |
[UMC 3rd/Android] Intent : Component 사이의 통신 (0) | 2022.09.27 |
[UMC 3rd/Android] 앱 구성 요소(Component) (0) | 2022.09.27 |
[UMC 3rd/Android] Manifest 주요 속성 (0) | 2022.09.27 |