From 25e1f29e3010bdd80fcaa132c5070d74be1cc459 Mon Sep 17 00:00:00 2001 From: Super12138 <70494801+Super12138@users.noreply.github.com> Date: Fri, 7 Feb 2025 20:17:07 +0800 Subject: [PATCH] =?UTF-8?q?fix(main):=20=E4=B8=B4=E6=97=B6=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E5=9B=A0=E6=B7=BB=E5=8A=A0=E5=85=B1=E4=BA=AB=E5=85=83?= =?UTF-8?q?=E7=B4=A0=E8=BD=AC=E5=9C=BA=E5=AF=BC=E8=87=B4=E7=9A=84FAB?= =?UTF-8?q?=E5=8A=A8=E7=94=BB=E4=B8=8D=E8=BF=9E=E8=B4=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/kotlin/cn/super12138/todo/ui/TodoDefaults.kt | 4 ++++ .../kotlin/cn/super12138/todo/ui/pages/main/MainPage.kt | 8 ++++---- .../cn/super12138/todo/ui/pages/main/ManagerFragment.kt | 4 ++-- .../super12138/todo/ui/pages/main/components/TodoCard.kt | 3 ++- 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/app/src/main/kotlin/cn/super12138/todo/ui/TodoDefaults.kt b/app/src/main/kotlin/cn/super12138/todo/ui/TodoDefaults.kt index 3386031..7b962d4 100644 --- a/app/src/main/kotlin/cn/super12138/todo/ui/TodoDefaults.kt +++ b/app/src/main/kotlin/cn/super12138/todo/ui/TodoDefaults.kt @@ -7,4 +7,8 @@ object TodoDefaults { * 屏幕左右两边预留边距(防止内容全部贴边显示过丑) */ val screenPadding = 16.dp + /** + * 待办卡片默认高度 + */ + val toDoCardHeight = 80.dp } \ No newline at end of file diff --git a/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/MainPage.kt b/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/MainPage.kt index ee79f9d..7ec9e91 100644 --- a/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/MainPage.kt +++ b/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/MainPage.kt @@ -53,11 +53,11 @@ fun MainPage( ) { val toDoList = viewModel.sortedTodos.collectAsState(initial = emptyList()) val listState = rememberLazyListState() - val isExpanded by remember { + /*val isExpanded by remember { derivedStateOf { listState.firstVisibleItemIndex == 0 } - } + }*/ val selectedTodoIds = viewModel.selectedTodoIds.collectAsState() var showDeleteConfirmDialog by rememberSaveable { mutableStateOf(false) } @@ -97,9 +97,9 @@ fun MainPage( enter = fadeIn() + expandIn(), exit = shrinkOut() + fadeOut() ) { - // TODO: 修复在滑动列表时FAB位移导致的动画不连贯 + // TODO: 修复在滑动列表时FAB位移导致的动画不连贯(临时方案为底部加padding) TodoFAB( - expanded = isExpanded, + expanded = true, onClick = { viewModel.setEditTodoItem(null) // 每次添加待办前清除上一次已选待办 toTodoEditPage() diff --git a/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/ManagerFragment.kt b/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/ManagerFragment.kt index 447943b..038afe2 100644 --- a/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/ManagerFragment.kt +++ b/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/ManagerFragment.kt @@ -45,11 +45,11 @@ fun ManagerFragment( thumbUnselectedColor = MaterialTheme.colorScheme.secondary, thumbSelectedColor = MaterialTheme.colorScheme.primary ), - modifier = modifier, + modifier = modifier ) { LazyColumn( state = state, - contentPadding = PaddingValues(horizontal = TodoDefaults.screenPadding) + contentPadding = PaddingValues(start = TodoDefaults.screenPadding, bottom = TodoDefaults.toDoCardHeight / 2, end = TodoDefaults.screenPadding) ) { if (list.isEmpty()) { item { diff --git a/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/components/TodoCard.kt b/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/components/TodoCard.kt index 79e5ed6..c50d641 100644 --- a/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/components/TodoCard.kt +++ b/app/src/main/kotlin/cn/super12138/todo/ui/pages/main/components/TodoCard.kt @@ -41,6 +41,7 @@ import androidx.compose.ui.unit.dp import cn.super12138.todo.R import cn.super12138.todo.constants.Constants import cn.super12138.todo.logic.model.Priority +import cn.super12138.todo.ui.TodoDefaults import cn.super12138.todo.utils.VibrationUtils @OptIn(ExperimentalFoundationApi::class, ExperimentalSharedTransitionApi::class) @@ -64,7 +65,7 @@ fun TodoCard( ElevatedCard( modifier = modifier .fillMaxWidth() - .height(80.dp) + .height(TodoDefaults.toDoCardHeight) ) { Row( verticalAlignment = Alignment.CenterVertically,