본문 바로가기

Programming/Android

Custom ListPreference #1

반응형
설정 화면을 만들때 preference를 이용하면 xml로 쉽게 만들 수 있습니다.
그러나 기본으로 제공되고 있는 종류가 너무 적습니다. 

CheckBoxPreference
EditTextPreference
ListPreference
RingtonePreference
이 4가지가 기본적으로 제공되고 있습니다.

이번에 작업을 하면서 ListPreference 로 색상을 선택하게 하였는데 색상이 보이지 않아서 사용자들의 불만이 급증할 것으로 생각 되었습니다. 그래서 Custom ListPreference를 만들기로 하였습니다.

ListPreferece는 DialogPreference를 상속 받아서 Dialog안에 리스트를 출력해 주는 Preference입니다.


이런 ListPreference를 만들려고 합니다. 이 Dialog에는 총 4개의 부분으로 나눠져 있습니다.

 topPanel  

 contentPanel  

 customPanel  
 buttonPanel  


topPanel은 title 부분입니다. Custom Title로 변경 가능 합니다.
contentPanel은 DialogPreference에서 생성된 부분입니다. 사용자가 직접 Custom View로 변경하는 것은 힘들어 보입니다.
customPanel은 Custom View를 구현할 수 있는 부분입니다.
buttonPanel은 버튼이 나오는 부분으로 이부분은 negative, positive로 쉽게 변경이 가능합니다.

contentPanel을 바꾸고 싶은 것이 목표입니다. 그래서 검색해 봤습니다. 구글 레퍼런스 사이트에서 찾아 냈습니다.


오른쪽 아래에 보시면 (if a custom content view is required) ....... custom content 가 필요하면 이걸 사용하라고 합니다. 친절히 이렇게 써줬다니... 감격했습니다.


반응형