fix: rank: anim to top

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-04-25 20:57:04 +08:00
parent 8159e1b1df
commit 91142be3bd
2 changed files with 12 additions and 4 deletions

View File

@@ -11,8 +11,12 @@ class RankController extends GetxController
RxInt tabIndex = 0.obs;
late TabController tabController;
ZoneController get controller => Get.find<ZoneController>(
tag: tabsConfig[tabController.index]['rid'].toString());
ZoneController get controller {
final item = tabsConfig[tabController.index];
return Get.find<ZoneController>(
tag: '${item['rid']}${item['season_type']}');
}
@override
ScrollController get scrollController => controller.scrollController;

View File

@@ -36,8 +36,12 @@ class _RankPageState extends State<RankPage>
() => IntrinsicHeight(
child: InkWell(
onTap: () {
_rankController.tabIndex.value = index;
_rankController.tabController.animateTo(index);
if (_rankController.tabIndex.value != index) {
_rankController.tabIndex.value = index;
_rankController.tabController.animateTo(index);
} else {
_rankController.animateToTop();
}
},
child: ColoredBox(
color: index == _rankController.tabIndex.value