- Text -
<TextView>
화면에 text를 표시하는 기능
<Plain Text>
사용자의 입력을 받는 TextView (EditText라 불린다)
<Password>
EditText - 입력 받는 타입만 text password 형태
<Password(Numberic)>
EditText - 입력 받는 타입만 number password 형태
<E-mail>
EditText - 입력 받는 타입만 Email 형태(스페이스바 왼쪽에 @문자 추가 되어있음)
<Phone>
EditText - 전화번호 형식의 숫자 패드 키보드가 생성됨
<Postal Address>
EditText - 우편번호 형식의 키보드가 생성됨(맨 윗줄를 꾹 누루면 숫자 생성)
<Multiline Text>
EditText - Enter가 추가되어 다음 줄로 넘어갈 수 있음
<Time>
EditText - 시간을 입력 할 수 있게 “:” 문자가 키보드에 추가됨
<Date>
EditText - 날짜를 입력 할 수 있는 (예시: 2022/07/11) “/” 문자가 키보드에 추가됨
<Number>
EditText - 기본 숫자 패드 다른 문자 부호는 입력 불가
<Number(signed)>
EditText - 양수, 음수를 확인 할 수 있는 “-” 문자 부호만 사용 가능한 숫자 패드
<Number(Decimal)>
EditText - 소수점을 위해 “.” 문자 부호만 사용 가능한 숫자 패드
<AutoCompleteTextView>
EditText - 자동 완성 기능을 지원하는 TextView
<MutilAutoCompleteTextView>
EditText - 자동 완성 기능을 지원하는 TextView (AutoCompleteTextView와 유사하나 여러 개의 단어를 완성 할 수 있다는 차이점이 있음)
<CheckedTextView>
Checkbox를 사용 가능한 TextView
<TextlnputLayout>
EditText - 텍스트를 입력하는 곳이 Layout 속성을 가짐(속성 설정 가능)
- Buttons -
<Button>
사용자가 클릭하여 작업을 할 수 있는 사용자 인터페이스
<ImageButton>
사용자가 이미지를 클릭하여 작업을 할 수 있는 사용자 인터페이스
<ChipGroup>
다수의 Chip을 묶기 위해 사용
<Chip>
카테고리, 요소, 타입 등을 표현 할 때 타원형의 background에 그 텍스트를 표현하는 버튼
<CheckBox>
선택 또는 선택 해제 할 수 있는 체크 박스 버튼
<RadioGroup>
다수의 RadioButton을 하나의 그룹으로 묶기 위해 사용(여러개의 라디오 버튼 중 하나를 선택할 때 사용됨)
<RadioButton>
원형으로 된 체크 박스
<ToggleButton>
ON / OFF 중 한 가지의 상태를 가지는 버튼
<Switch>
좌우로 움직이며 한 가지의 상태를 가지는 버튼
<FloatingActionButton>
UI 위에 원형의 떠 있는 듯한 버튼, 버튼을 활용하여 다양한 동작 넣기 가능
- Widgets -
<View>
액티비티 내에서 공간을 만듬(구분선으로 사용 가능)
<imageView>
View 의 속성을 상속 받아 공간 안에 이미지를 넣음
<WebView>
Web Page를 보여주기 위한 View 내장된 웹 브라우저를 뷰 형태로 앱에서 표현
<VideoView>
액티비티에 동영상을 넣음
<CalendarView>
단어 그대로 캘린더;; 클릭 이벤트로 날짜를 선택 할 수 있고 원하는 날짜로 달력을 스크롤 하고 찾기 가능
<ProgressBar>
진행 상황을 알려주는 원형의 컴포넌트
<ProgressBar(horizontal)>
수평의 작업 진행률을 나타내는 사용자 인터페이스 / 왼쪽 끝에서 오른쪽으로 채워는 기능
<SeekBar>
Switch랑 비슷하며 드래그가 가능함 / ProgressBar의 확장 위젯 / 왼쪽 또는 오른쪽으로 끌거나 화살표 키를 사용하여 현재 진행률 수준을 설정가능
<SeekBar(Discrete)>
불연속적으로 놓여있는 점 위를 움직이며 조절하는 컴포넌트
<RatigBar>
SeekBar 및 ProgressBar의 확장으로 별표로 등급 혹은 만족도 등을 표시(별점 표시 같은)
<SearchView>
사용자가 검색어 입력 후 search provider 에게 검색을 요청할 수 있는 UI를 제공 / 검색어 추천 리스트나 검색 결과 리스트를 보고 사용자는 해당 리스트에서 원하는 항목을 선택할 수 있음
<TextureView>
TextureView를 사용하여 camera나 openGL 같은 콘텐츠 스트림을 표시 할 수 있습니다
<SurfaceView>
SurfaceView는 GDI Thread를 통해서 Surface에 그려지지 않고 다른 Thread를 통해서 그려지기 때문에 동영상이나 카메라 프리뷰와 같이 그려지는 양이 매우 많거나 빠른 화면 변화를 원한다면 SurfaceView를 사용함
<Horizontal Divider>
수평으로 나눔
<Vertical Divider>
수직으로 나눔
- Containers -
<Spinner>
여러 개의 값 중 1개를 선택하기 위해 사용하는 것
<RecyclerView>
스크롤이 가능한 컨테이너에 여러 개의 뷰를 담아서 보여주는 뷰 그룹으로 ListView이슈로 인해 더 많이 사용하는 것( ViewHolder를 사용하기 때문에 ListView보다 성능이 더 좋다고 함 )
<ScrollView>
위아래로 스크롤이 가능한 기능
<HorizontalScrollView>
좌우로 스크롤이 가능한 기능
<NestedScrollView>
한 화면에 여러개의 스크롤을 사용할 때 사용하는 것
<ViewPager2>
페이지 넘기는 듯이 슉슉 넘길 수 있는 기능(RecyclerView를 기반을 두고 있음)
<CardView>
CardView는 FrameLayout 클래스를 확장(배경과 그림자가 추가됨)
<AppBarLayout>
ActionBar가 기본적으로 있지만 액션바는 불편함으로 인해 material design 패키지에 있는 AppBarLayout과 ToolBar를 제시 / 스크롤링 제스처를 구현 하는 카테고리
<BottomAppBar>
네비게이션 메뉴와 다양한 옵션들을 하단으로 내린 Appbar
<NavigatationView>
왼쪽에서 슬라이드 형식으로 나오며 메뉴 항목을 나열하는 형태로 구성
<BottomNavigationView>
안드로이드 하단에서 네비게이션 역할을 하는 버튼 모음
<Toolbar>
기존의 Actionbar 대체하는 View의 일종 / View이기 때문에 actionbar가 할 수 없었던 것을 쉽게 제어할 수 있음
<TabLayout>
탭을 표시하기 위한 가로 레이아웃을 제공
<TabItem>
TabLayout 레이아웃 내에서 탭 항목을 선언 하는 기능
<ViewStub>
ViewStub은 layout이 run time런타임 시 느리게 inflate되도록 사용될 수 있음 / 뷰를 로드하여 메모리 사용을 줄이고 렌더링 속도를 높일 수 있음
<include>
레이아웃에 재사용 가능한 구성 요소를 추가
<fragment>
텍스트 뷰나 버튼처럼 액티비티 화면을 구성하는 뷰 / 프래그먼트가 다른 뷰와 다른 점은 액티비티 처럼 동작한다는 것 / Fragment는 여러 Activity에서 재사용이 가능하므로 UI 구성에 소요되는 작업량의 많은 부분 감소 시킬 수 있음
<NavHostFragment>
Fragment를 상속하고 NavHost 인터페이스를 구현함 / 자체 포함 된 navigation이 발생할 수 있도록 레이아웃 내에 영역을 제공
<view>
다른 View들을 포함하고 있거나 포함할 수 있는 일반적인 View를 의미
<requestFocus>
해당 뷰에 포커스를 줄 수가 있음
- Helpers -
<Group>
ConstraintLayout에서 제공하는 helper 중 하나로 여러 뷰들의 visibility를 그룹으로 묶어 관리하기 편하게 해줌
<Barrier(Horizontal)>
가상 장벽(가이드라인)을 만들어 해당 Barrier에 연관된 뷰들이 크기/위치가 Barrier에 맞게 변경됨
<Barrier(Vertical)>
Barrier를 수직으로 설정할 수 있음
<Flow>
Flow는 기존에 ConstraintLayout에서 LinearLayout처럼 동작하게 하는 Chain과 유사하게 수평 또는 수직으로 배치를 할 수 있게 하는 기능
<Guideline(Horizontal)>
가로축 방향을 가진 가상의 뷰로 뷰의 위치를 잡는 데 도움이 되는 유틸리티 클래스
<Guideline(Vertical)>
세로축 방향을 가진 가상의 뷰로 뷰의 위치를 잡는 데 도움이 되는 유틸리티 클래스
<Layer>
모형을 겹처서 한꺼번에 출력 가능
<ImageFilterView>
이미지를 표시하며 색조, 명도, 색 온도, 대비 등을 수정을 가능하게 하는 뷰
<ImageFilterButton>
이미지를 표시하며 색조, 명도, 색 온도, 대비 등을 수정을 가능하게 하는 버튼
<MockView>
레이아웃을 프로토타입화 하는 데 유용한 보기 / 대각선과 함께 레이블(기본적으로 뷰 ID)을 그릴 수 있는 기본 뷰 / UI를 작성하는 동안 임시 모의 보기로 유용함
- Google -
<AdView>
화면에 구글의 배너 광고를 표시할 수 있음
<MapView>
화면에 구글 지도에서 데이터와 지도를 함께 표시할 수 있음
<참고>
https://developer.android.com/guide/topics/manifest/manifest-intro?hl=ko
앱 매니페스트 개요 | Android 개발자 | Android Developers
앱 매니페스트 개요 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 모든 앱 프로젝트는 프로젝트 소스 세트의 루트에 AndroidManifest.xml 파일(정확히 이 이름)
developer.android.com
[Android] Palette (Helper)
Group group는 ConstraintLayout에서 제공하는 helper 중 하나로 여러 뷰들의 visibility를 그룹으로 묶어 관리하기 편하게 해 줍니다. ConstraintLayout으로 뷰를 구성하면 모든 뷰들이 플랫 하게 존재해서 visibili
ejay.tistory.com
'Android' 카테고리의 다른 글
Android - Activity 생명주기 (0) | 2022.11.23 |
---|---|
Android - Layout (0) | 2022.11.11 |
Android - Manifest (0) | 2022.11.02 |
[Android] 프로젝트 수준의 build.gradle 오류 (0) | 2022.08.17 |
[Android] ViewPager2 중첩 문제 (0) | 2022.08.12 |