환경설정 구성요소 및 속성 Android Jetpack의 구성요소
이 주제에서는 가장 일반적으로 사용되는 Preference
구성요소와 설정 화면을 빌드할 때 사용되는 속성의 일부를 설명합니다.
환경설정 구성요소
이 섹션에서는 일반적인 Preference
구성요소를 설명합니다. 자세한 내용은 각 구성요소와 관련된 참조 페이지를 참조하세요.
인프라 환경설정
PreferenceFragmentCompat
- Preference
객체의 상호작용하는 계층 구조를 표시하도록 처리하는 Fragment
입니다.
환경설정 컨테이너
PreferenceScreen
- 설정 화면을 나타내는 최상위 컨테이너입니다. 이 컨테이너는 Preference
계층 구조의 루트 구성요소입니다.
PreferenceCategory
- 비슷한 Preferences
를 그룹화하는 데 사용되는 컨테이너입니다. PreferenceCategory
는 카테고리 제목을 표시하고 시각적으로 Preferences
의 그룹을 구분합니다.
개별 환경설정
Preference
- 개별 설정을 나타내는 기본 빌딩 블록입니다. Preference
를 유지하도록 설정하면 이 클래스는 설정의 사용자 선택을 보존하는 키-값 쌍을 가지며 이는 애플리케이션 어디에서나 액세스할 수 있습니다.
EditTextPreference
- String
값을 유지하는 Preference
입니다. 사용자는 Preference
를 탭하여, 유지된 값을 변경할 수 있는 텍스트 필드가 포함된 대화상자를 실행할 수 있습니다.
ListPreference
- 문자열 값을 유지하는 Preference
입니다. 사용자는 라디오 버튼의 목록과 이에 대응하는 라벨이 포함된 대화상자에서 이 값을 변경할 수 있습니다.
MultiSelectListPreference
- 문자열 집합을 유지하는 Preference
입니다. 사용자는 체크박스의 목록과 이에 대응하는 라벨이 포함된 대화상자에서 이 값을 변경할 수 있습니다.
SeekBarPreference
- 정수 값을 유지하는 Preference
입니다. 이 값은 Preference
레이아웃에 표시된 탐색 막대를 드래그하여 변경할 수 있습니다.
SwitchPreferenceCompat
- 부울 값을 유지하는 Preference
입니다. 이 값은 스위치 위젯과 상호작용하거나 Preference
레이아웃을 탭하여 변경할 수 있습니다.
CheckBoxPreference
- 부울 값을 유지하는 Preference
입니다. 이 값은 체크박스와 상호작용하거나 Preference
레이아웃을 탭하여 변경할 수 있습니다.
환경설정 속성
아래에는 Preference
의 모양 및 동작을 구성하는 데 가장 일반적으로 사용되는 속성의 일부가 나열되어 있습니다.
일반 속성
-
title
-
Preference
의 제목을 나타내는String
값입니다.예:
app:title="Title"
-
summary
-
Preference
의 요약을 나타내는String
값입니다.예:
app:summary="Summary"
-
icon
-
Preference
아이콘을 나타내는Drawable
입니다.예:
app:icon="@drawable/ic_camera"
-
key
-
연관된
Preference
의 값을 유지하는 데 사용되는 키를 나타내는String
값입니다. 키를 사용하면 런타임 중에Preference
를 더 상세하게 맞춤설정할 수 있습니다. 계층 구조의 각Preference
에 키를 설정해야 합니다.예:
app:key="key"
-
enabled
-
사용자가
Preference
와 상호작용할 수 있는지를 나타내는 부울 값입니다. 이 값이false
이면Preference
는 비활성화 상태로 표시되고 사용자와 상호작용할 수 없습니다. 기본값은true
입니다.예:
app:enabled="false"
-
selectable
-
사용자가
Preference
와 상호작용할 수 있는지를 나타내는 부울 값입니다. 기본값은true
입니다.예:
app:selectable="false"
-
isPreferenceVisible
-
Preference
또는Preference
카테고리가 표시되는지를 나타내는 부울 값입니다. 이 값을 설정하는 것은setVisible()
을 호출하는 것과 동일합니다.예:
app:isPreferenceVisible="false"
-
defaultValue
-
Preference
의 기본값을 나타냅니다. 이 값은 이Preference
에 유지된 값이 없을 때 설정되고 유지됩니다. 값 유형은 관련된Preference
에 따라 다릅니다.예:
app:defaultValue="true"
-
dependency
-
이
Preference
의 상태를 제어하는SwitchPreferenceCompat
의 키를 나타냅니다. 대응하는 스위치가 사용 중지되면Preference
는 중지되고 수정할 수 없습니다.예:
app:dependency="parent"
PreferenceCategory 속성
-
initialExpandedChildrenCount
-
Preference
의 펼치기 동작을 사용 설정하는 정수 값입니다. 이 값은PreferenceGroup
에 보이는 하위 요소의 최대 개수를 나타냅니다. 모든 추가 하위 요소는 접혀있고 펼치기 버튼을 탭하여 표시할 수 있습니다. 기본적으로 이 값은Integer.MAX_VALUE
이며 모든 하위 요소가 표시됩니다.경고: 이 속성을 사용한다면 구성이 변경(예: 화면 회전)되었을 때 상태가 올바르게 저장되고 복원되도록
PreferenceCategory
에 키를 설정해야 합니다.예:
app:initialExpandedChildrenCount="0"
ListPreference / MultiSelectListPreference 속성
-
entries
-
사용자에게 표시되는 목록 항목에 대응하는 문자열 배열입니다. 각 값은 내부적으로 유지되는 값 배열의 색인에 따라 대응됩니다. 예를 들어, 사용자가 첫 번째 목록 항목을 선택하면 이에 대응하는 값 배열의 첫 번째 요소가 유지됩니다.
예:
app:entries="@array/entries"
경고: 두 배열의 길이가 같고 각 배열의 색인이 올바른 항목/값 쌍과 일치하는지 확인해야 합니다.
-
entryValues
-
유지될 항목의 배열입니다. 각 값은 사용자에게 표시되는 목록 항목 배열의 색인에 따라 대응됩니다.
예:
app:entryValues="@array/values"