From 90aa7d10e959b302aeb1096b9bca80cd0d00465d Mon Sep 17 00:00:00 2001 From: lxh2875931338 Date: Thu, 27 Aug 2026 21:42:04 +0800 Subject: [PATCH] =?UTF-8?q?=E7=8E=B0=E5=9C=A8=E5=88=97=E8=A1=A8=E5=BA=95?= =?UTF-8?q?=E9=83=A8=E7=9A=84=E4=BF=A1=E6=81=AF=E6=98=BE=E7=A4=BA=E6=AD=A3?= =?UTF-8?q?=E5=B8=B8=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/constants/ui_constants.dart | 5 +++++ lib/pages/home_page.dart | 3 ++- lib/pages/playlist_page.dart | 8 +++++++- lib/pages/webdav_file_list_page.dart | 9 +++++++-- 4 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 lib/constants/ui_constants.dart diff --git a/lib/constants/ui_constants.dart b/lib/constants/ui_constants.dart new file mode 100644 index 0000000..c87bf3d --- /dev/null +++ b/lib/constants/ui_constants.dart @@ -0,0 +1,5 @@ +// lib/constants/ui_constants.dart +class UIConstants { + static const double miniPlayerHeight = 60; + static const double miniPlayerBottomSpace = 80; // 60 + 20 安全余量 +} diff --git a/lib/pages/home_page.dart b/lib/pages/home_page.dart index 7b3cc5f..e6a3b53 100644 --- a/lib/pages/home_page.dart +++ b/lib/pages/home_page.dart @@ -6,6 +6,7 @@ import '../services/playback_service.dart'; import '../widgets/magnetic_scroll_physics.dart'; import 'webdav_setup_page.dart'; import 'webdav_file_list_page.dart'; +import '../constants/ui_constants.dart'; // ================================================== // 歌曲数据模型 @@ -553,7 +554,7 @@ class _HomePageState extends State { padding: const EdgeInsets.only( left: 20, right: 20, - bottom: 20, + bottom: UIConstants.miniPlayerBottomSpace, ), sliver: _isLoading ? const SliverFillRemaining( diff --git a/lib/pages/playlist_page.dart b/lib/pages/playlist_page.dart index 90d1a2b..aac044f 100644 --- a/lib/pages/playlist_page.dart +++ b/lib/pages/playlist_page.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../services/audio_service.dart'; +import '../constants/ui_constants.dart'; class PlaylistPage extends StatelessWidget { const PlaylistPage({super.key}); @@ -83,7 +84,12 @@ class PlaylistPage extends StatelessWidget { ), ) : ListView.builder( - padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), + padding: const EdgeInsets.only( + left: 16, + right: 16, + top: 8, + bottom: UIConstants.miniPlayerBottomSpace, + ), itemCount: queue.length, itemBuilder: (context, index) { final song = queue[index]; diff --git a/lib/pages/webdav_file_list_page.dart b/lib/pages/webdav_file_list_page.dart index a3ce3ed..50c7cbd 100644 --- a/lib/pages/webdav_file_list_page.dart +++ b/lib/pages/webdav_file_list_page.dart @@ -6,6 +6,7 @@ import 'package:provider/provider.dart'; import '../services/webdav_service.dart'; import '../services/playback_service.dart'; import '../services/audio_service.dart'; +import '../constants/ui_constants.dart'; class WebDAVFileListPage extends StatefulWidget { final String currentPath; @@ -315,8 +316,12 @@ class _WebDAVFileListPageState extends State { ), ) : ListView.builder( - padding: const EdgeInsets.symmetric( - horizontal: 16, vertical: 8), + padding: const EdgeInsets.only( + left: 16, + right: 16, + top: 8, + bottom: UIConstants.miniPlayerBottomSpace, + ), itemCount: _items.length, itemBuilder: (context, index) { final item = _items[index];