1일차 문제는 UI에 관련한 문제였고 몸이 너무 안좋아서 블로그 포스팅은 패스했다(물론 문제는 풀었다ㅎㅎ)
기본문제는 매초 게이지가 감소하는데 버튼을 누르면 게이지가 차오르고 게이지가 일정 퍼센트가 넘었을 때 버튼을 누르면 점수가 올라가는 문제였다.
처음에는 그냥 container를 이용해서 타이머를 부착해 SetState하는 방식으로 해결할까 했는데 프레임수 등의 이유로AnimatedContainer를 사용했다. (그런데 다 풀고 container방식도 해봤는데 차이는 없더라...)
AnimatedContainer와 타이머 부착이 핵심이라고 느껴졌다. 더불어 높이가 마이너스가 되지 않도록 추가 If문을 사용하였다
https://dartpad.dev/?id=7624b71386b1f29988f7fe6465d8894c
DartPad
dartpad.dev
심화문제는 별에 계속 돌아가면서 오른쪽으로가는데 이때 오른쪽 끝까지 이동하면 한칸 아래 왼쪽 끝까지 이동해 다시 반복하는 문제였다.
이 문제도 AnimatedContainer를 사용해서 풀어볼까 했는데 다른분들 코드를 보니 AnimatedBuilder를 사용하여서 이번엔 AnimatedBuilder를 사용해보았다.
https://dartpad.dev/?id=223545df3c667d3efecaa2cdbd95f989
DartPad
dartpad.dev
오늘은 조금 늦게 퇴근하고 모니터암도 조립하고해서 문제 푸는 시간이 빠듯했다...
이후 개인프로젝트도 진행하고 자야지..