From 894f4fa68da085eeb30353d69ef69d980ba47c94 Mon Sep 17 00:00:00 2001 From: guozhigq Date: Sat, 13 Apr 2024 22:57:18 +0800 Subject: [PATCH] =?UTF-8?q?opt:=20index=E4=B8=BA0=E6=97=B6=E5=90=88?= =?UTF-8?q?=E9=9B=86=E8=B7=B3=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/pages/bangumi/widgets/bangumi_panel.dart | 14 +++++++++----- .../detail/introduction/widgets/page_panel.dart | 17 +++++++++-------- .../introduction/widgets/season_panel.dart | 2 -- 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/lib/pages/bangumi/widgets/bangumi_panel.dart b/lib/pages/bangumi/widgets/bangumi_panel.dart index 988f8d4f..58078d80 100644 --- a/lib/pages/bangumi/widgets/bangumi_panel.dart +++ b/lib/pages/bangumi/widgets/bangumi_panel.dart @@ -92,11 +92,15 @@ class _BangumiPanelState extends State { // 在回调函数中获取更新后的状态 final double offset = min((currentIndex * 150) - 75, listViewScrollCtr.position.maxScrollExtent); - listViewScrollCtr.animateTo( - offset, - duration: const Duration(milliseconds: 300), - curve: Curves.easeInOut, - ); + if (currentIndex.value == 0) { + listViewScrollCtr.jumpTo(0); + } else { + listViewScrollCtr.animateTo( + offset, + duration: const Duration(milliseconds: 300), + curve: Curves.easeInOut, + ); + } }); } diff --git a/lib/pages/video/detail/introduction/widgets/page_panel.dart b/lib/pages/video/detail/introduction/widgets/page_panel.dart index fc999ba8..83db2d52 100644 --- a/lib/pages/video/detail/introduction/widgets/page_panel.dart +++ b/lib/pages/video/detail/introduction/widgets/page_panel.dart @@ -5,7 +5,6 @@ import 'package:get/get.dart'; import 'package:pilipala/models/video_detail_res.dart'; import 'package:pilipala/pages/video/detail/index.dart'; import 'package:pilipala/pages/video/detail/introduction/index.dart'; -import 'package:scrollable_positioned_list/scrollable_positioned_list.dart'; import '../../../../../common/pages_bottom_sheet.dart'; import '../../../../../models/common/video_episode_type.dart'; @@ -35,7 +34,6 @@ class _PagesPanelState extends State { final String heroTag = Get.arguments['heroTag']; late VideoDetailController _videoDetailController; final ScrollController listViewScrollCtr = ScrollController(); - final ItemScrollController itemScrollController = ItemScrollController(); late PersistentBottomSheetController? _bottomSheetController; @override @@ -60,7 +58,6 @@ class _PagesPanelState extends State { } void changeFucCall(item, i) async { - print('pages changeFucCall'); widget.changeFuc?.call(item.cid); currentIndex.value = i; _bottomSheetController?.close(); @@ -72,11 +69,15 @@ class _PagesPanelState extends State { // 在回调函数中获取更新后的状态 final double offset = min((currentIndex * 150) - 75, listViewScrollCtr.position.maxScrollExtent); - listViewScrollCtr.animateTo( - offset, - duration: const Duration(milliseconds: 300), - curve: Curves.easeInOut, - ); + if (currentIndex.value == 0) { + listViewScrollCtr.jumpTo(0); + } else { + listViewScrollCtr.animateTo( + offset, + duration: const Duration(milliseconds: 300), + curve: Curves.easeInOut, + ); + } }); } diff --git a/lib/pages/video/detail/introduction/widgets/season_panel.dart b/lib/pages/video/detail/introduction/widgets/season_panel.dart index 745c081d..2afefcb4 100644 --- a/lib/pages/video/detail/introduction/widgets/season_panel.dart +++ b/lib/pages/video/detail/introduction/widgets/season_panel.dart @@ -4,7 +4,6 @@ import 'package:pilipala/common/pages_bottom_sheet.dart'; import 'package:pilipala/models/video_detail_res.dart'; import 'package:pilipala/pages/video/detail/index.dart'; import 'package:pilipala/utils/id_utils.dart'; -import 'package:scrollable_positioned_list/scrollable_positioned_list.dart'; import '../../../../../models/common/video_episode_type.dart'; import '../controller.dart'; @@ -33,7 +32,6 @@ class _SeasonPanelState extends State { late RxInt currentIndex = (-1).obs; final String heroTag = Get.arguments['heroTag']; late VideoDetailController _videoDetailController; - final ItemScrollController itemScrollController = ItemScrollController(); late PersistentBottomSheetController? _bottomSheetController; @override