Seize the day

POST : Android Dev Study

환경 설정 페이지 고도화 CommonSettingsView

환경설정 페이지의 각 세팅은 일정한 패턴이 있기 때문에 이를 각각 구현한다면 너무나 큰 시간과 에너지의 낭비가 된다. 각 세팅을 xml에서 정의하고 코드 작성은 최소화하는 방법에 대해서 몇 차례 나눠서 정리를 할 생각이다. 


달성해야 하는 목표는 아래와 같다. 


- 환경설정의 각 세팅의 기본적인 UI 생성은 XML에서 하도록 한다. 

- 설정 Activity는 하나만 만들도록 한다. AndroidManifest에서 설정 Activity만 수십개씩 관리하는 것도 힘들다. 하나의 SettingActivity로 모든 여러 설정 페이지를 다 구현한다. 

- 세팅 항목의 초기화 변경시 UI 업데이트 등은 별도의 CommonSettingsHandler를 통해서 한다.

- 설정 페이지에서 Activity 종속적인 처리는 ActivityCycleListener를 통해서 한다. 

- 설정 값의 기본적인 액션은  XML에서 다 제공한다.

* 다른 설정 페이지로 이동

* OS 웹 브라우저 열기

* WebView 브라우저로 열기

* 마켓 페이지 열기

* 앱의 다른 Activity로 이동하기


일단 오늘은 CommonSettingsView만 만들자. 생산물에 대한 정리이므로 자세한 설명은 생략한다. custom attribute 사용법은 구글 검색하면 더 자세히 나온다. 


view하나에서 모든 값을 초기화할 필요가 있기 때문에 cumtom attribue를 정의한다. 

attrs.xml



실제로 사용할 때는 custom attribute는 아래와 같이 사용된다. 

settings_main.xml



세팅 버튼 디자인, 최대한 간단하게 디자인 한다. 

common_settings_view.xml



custom attribue를 초기화하고, view의 visibility를 조정한다.  값의 초기화와 Click 이벤트는 CommonSettingsHandler에 위임한다. 

CommonSettingsView.java



top

posted at

2015. 7. 17. 22:10


CONTENTS

Seize the day
BLOG main image
김대정의 앱 개발 노트와 사는 이야기
RSS 2.0Tattertools
공지
아카이브
최근 글 최근 댓글
카테고리 태그 구름사이트 링크