처음 판, 월말에 남은 칸 닷새.

창을 네 주로 바꾼 뒤 남은 문제는 하나 — 좁은 칸 안에서 어떤 일정을 어떤 무게로 그릴지.
개발 과정
옛 위젯은 캡처가 없음. 아래 그림은 그때 배치를 같은 위젯 크기로 다시 그린 것(tools/gen_evo.py) —
바뀐 건 크기가 아니라 배치와 무게라서 크기를 하나로 고정. 마지막 판만 실제 캡처.

한 달 격자 → 다섯 주 창
- 막힘
- 달 격자는 월말에 다음 주가 안 보임
- 한 것
- 이전주 하나 + 이번주 + 다음 세 주로 창을 바꾸고 앞뒤 이동 추가
- 결과
- 달이 바뀌어도 창이 그대로 흐름. 앞뒤는 한 주씩이 아니라 창째로
의사결정 방식 — 여덟 안을 그려 놓고 선택
갈림길마다 그 자리를 실제 치수로 그린 HTML 한 장을 만들고 거기서 선택.
무엇을 그리나
안마다 위젯의 그 부분을 실제 색값과 치수로. 색은 위젯 코드의 계산 그대로 — 20% 바탕, 글자는 그 색을 48% 진하게
무엇을 같이 놓나
새로 넣는 것 혼자가 아니라 이미 쓰는 무게를 한 줄에 같이. 부딪히는지는 나란히 놓아야 보임
무엇을 적나
안마다 «무엇을 얻고 무엇을 잃는지» 한 줄. 「글자 자리를 다섯 글자 내준다」 처럼 값을 숫자로
어떻게 고르나
라디오 단추로 고르고 이름 복사. 고른 뒤에 코드 작성 — 여덟 개를 다 구현하지 않음
누르면 그때 그 화면으로 이동 — 라디오 단추도 그대로.
아홉 장 중 하나는 «안 바꾸기»로 끝남 — 일정 막대는 여덟 안을 다 그려 보니 지금이 최선. 그리는 값이 거기에도 있음.
레퍼런스도 이때 확인. 구글·애플 달력은 월간 화면에서 종일을 면, 시각 있는 것을 점으로. 판타스티컬은 여러 날짜리를 위쪽 띠로. 셋 다 안으로 넣고 나란히 놓자 우리 화면에서 무엇이 부딪히는지가 보임.
무게 넷 — 다른 화면에도 남는 규칙
같은 자료라도 «내가 무엇을 해야 하나» 로 갈라 무게를 줌. 면 · 점 · 가로선 · 회색 글자의 뜻은 소개에. 여기에 시간이 겹침 — 오늘 끝난 일정은 46%, 지난 날은 32% 로 걷힘.
배운 점
RemoteViews 는 좌표가 없음. «몇 시 자리에 놓기» 는 겹쳐 쌓는 통(FrameLayout)에 위 여백으로 자리 잡기. 칸 높이를 미리 알아야 하고, 높이 계산이 틀리면 눈금과 일정이 서로 다른 곳을 가리킴.
여백을 줄여서는 안 되는 자리. 첫 눈금을 칸 맨 위로 올리려고 여백을 세 번 깎았지만 실패. 남은 여백의 절반이 축의 5시 칸 자체였음. 축 시작을 6시로 올리고서야 해결. 줄이려는 것이 여백인지 내용인지부터 확인.
규칙은 월말에 무너지는지 확인. 「창에서 날이 제일 많은 달을 이번 달로」 규칙이 월말에 뒤집힘 — 9/28 에는 10월이 22일이라 이번 주와 다음 주가 흐려짐. 날짜 규칙은 경계에서 한 번 세어 보기.
한 표시에 두 뜻을 싣지 않음. 별 단 일정의 깃발이 공휴일에도 붙어 「쉬는 날」 위에 「마감」 이 얹힘. 같은 가로선으로 합쳐 해결.








