(TIL) 2020-09-24 기록
업데이트:
오늘 한 일
- 오늘은 메인화면 UI를 조금 짜보았다.
- 앱 화면에 앱바, 바디, 내비게이션 바가 있다고 친다면 우리 앱의 내비게이션 바는 바디 위에 오버레이되어 있다. 그래서 사실
Scaffold
위젯을 쓰면 앱바, 바디, 내비게이션 바를 따로 구현하지 않아도 되는데 모두 손수 구현했다. 그러다 보니 일종의 페이지 컨트롤러도 내가 구현하게 됐는데 하나의 모듈로 구현된 게 아니라 화면 코드 자체에 그냥 작성된 것이라 후에 리팩토링을 해야 할 것 같다. - 내비게이션바도 그렇고 플로팅 액션 버튼도 그렇고 모두 화면 위에 떠있는 것들이라
Stack
과Positioned
위젯을 활용했다.Positioned
위젯으로 Stack 내에 다른 위젯을 감싸주면 위치를 어디로든지 옮길 수 있다. CircleAvatar
위젯이CachedNetworkImage
와 궁합이 영 좋지 않은 것 같아 따로ClipOval
을 써서 인터넷에서 불러온 이미지를 그냥 동그랗게 오려서 보여주도록 만들었다. 훨씬 간편하고 보여지는 것은 똑같으며 범용성이 남다르다.- 지금 재사용 가능한 위젯들을 모두
HookWidget
으로 만들고 있는데State
관리와AnimationController
관리가 모듈화 되어 각각 독립적으로 이루어지니까 정말 편하다. 우리 앱에서 특히 녹음 화면에서 애니메이션이 동시다발적으로 보이게 되는데HookWidget
내에서는 여러가지AnimationController
들을 독립적으로 조종할 수 있기 때문에 여러 애니메이션들을 다루기에 매우 편할 것 같다.
내일 할 일
- 오늘은 너무 피곤해 잠깐 기절을 해버려서 웹 공부를 못했는데 내일 다시 BootStrap에서 Grid를 사용하는 법에 대해서 배워야 한다.
- 내일 백준 완전 탐색 문제를 풀어야 한다.
- 다음 주에는 우리 앱 메인 화면의 바디 나머지 4개를 만들어야 한다. 먼저 보이스 카드 위젯을 만들고 나머지 작업을 진행하려 한다.
댓글남기기