본문 바로가기

Android

[Android] App Widget - 앱 위젯




 위젯 UI 구성시 사용할 수 있는 레이아웃과 뷰

사용할 수 없는 뷰
- 커스텀 뷰
- 뷰로부터 파생된 Sub 뷰들
- EditText

사용 가능한 뷰
- FrameLayout
- LinearLayout
- RelativeLayout
- AnalogClock
- Button
- Chronometer
- ImageButton
- ImageView
- ProgressBar
- TextView



 위젯 레이아웃


하나의 앱에대해서 위젯은 원하는 수만큼 만들수도 있고, 하나의 위젯만 만들수도 있습니다.
각 위젯은, 크기, 레이아웃, 갱신주기, 업데이트 로직을 동일하고, 모두 다르게 가질 수 있습니다.
여러 위젯을 제공하는 경우, 위젯의 크기를 서로 달리해 여러 버전으로 제공하는 것이 유용합니다.


위젯의 레이아웃 크기
- 홈 스크린은 4x4 셀의 격자이다.
- 각 셀은 최소 74dpx74dp 
   (dip: Desinty Independent Pixels, 관련글 링크 : [Android] 디자이너와의 협업을 위한 몇가지 팁)
- 위젯의 크기는 아래의 공식으로 구한다.
   위젯의 최소 크기(dp) = (셀의 갯수 * 74dp) - 2dp(패딩값)









앱 위젯을 만들기 위해서는 아래의 세가지를 작성해 주어야 합니다.
1. 위젯의 UI를 정의하는 레이아웃 리소스
2. 위젯과 연관된 메타데이터를 기술하는 XML 정의파일
3. 위젯을 정의하고 제어하는 브로드 캐스트 리시버




 1. 위젯의 UI를 정의하는 레이아웃 리소스 







 2. 위젯과 연관된 메타데이터를 기술하는 XML 정의파일 






3번에 대한 이야기는 다음에...