style(app/schedule): 달력 애니메이션 속도 및 간격 조정

- 달력 열기/닫기 애니메이션 속도 조정 (200ms → 280ms)
- 날짜 스크롤 애니메이션 속도 조정 (150ms → 220ms)
- 달력 요일-날짜 간격 확대 (12px → 16px)
- 날짜 그리드 세로 간격 및 셀 높이 확대

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
caadiq 2026-01-15 09:45:01 +09:00
parent 033047ebdb
commit 25decd238b

View file

@ -60,7 +60,7 @@ class _ScheduleViewState extends ConsumerState<ScheduleView>
_calendarPageController = PageController(initialPage: _initialPage);
_yearPageController = PageController(initialPage: _initialPage);
_calendarAnimController = AnimationController(
duration: const Duration(milliseconds: 200),
duration: const Duration(milliseconds: 280),
vsync: this,
);
_calendarAnimation = CurvedAnimation(
@ -234,7 +234,7 @@ class _ScheduleViewState extends ConsumerState<ScheduleView>
(itemWidth / 2);
_dateScrollController.animateTo(
targetOffset.clamp(0, _dateScrollController.position.maxScrollExtent),
duration: const Duration(milliseconds: 150),
duration: const Duration(milliseconds: 220),
curve: Curves.easeOut,
);
}
@ -1286,7 +1286,7 @@ class _ScheduleViewState extends ConsumerState<ScheduleView>
);
}).toList(),
),
const SizedBox(height: 12),
const SizedBox(height: 16),
// (ExpandablePageView로 )
ExpandablePageView.builder(
controller: _calendarPageController,
@ -1370,9 +1370,9 @@ class _ScheduleViewState extends ConsumerState<ScheduleView>
physics: const NeverScrollableScrollPhysics(),
gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 7,
mainAxisSpacing: 4,
mainAxisSpacing: 6,
crossAxisSpacing: 4,
mainAxisExtent: 46, // Container(36) + SizedBox(6) + (4)
mainAxisExtent: 50, // Container(36) + SizedBox(6) +
),
itemCount: allDays.length,
itemBuilder: (context, index) {