환경설정 구성요소 및 속성 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"