import 'package:dating_touchme_app/pages/main/tabbar/main_tab_bar.dart'; import 'package:dating_touchme_app/pages/message/message_page.dart'; import 'package:dating_touchme_app/pages/mine/mine_page.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:get_storage/get_storage.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:dating_touchme_app/network/user_api.dart'; import '../../widget/double_tap_to_exit_widget.dart'; import '../discover/discover_page.dart'; import '../home/home_page.dart'; // 移除未使用的导入 class MainPage extends StatefulWidget { const MainPage({super.key}); @override State createState() => _MainPageState(); } class _MainPageState extends State { late UserApi _userApi; final storage = GetStorage(); PageController pageController = PageController(initialPage: 0); int currentIndex = 0; // 使用普通int替代RxInt // 将页面实例存储为成员变量,避免每次build都重新创建 late HomePage homePage; late DiscoverPage discoverPage; late MessagePage messagePage; late MinePage minePage; @override void initState() { super.initState(); // 获取UserApi实例 _userApi = Get.find(); // 初始化页面实例 homePage = HomePage(); discoverPage = DiscoverPage(); messagePage = MessagePage(); minePage = MinePage(); // 检查token并调用获取婚姻信息详情的方法 checkTokenAndFetchMarriageInfo(); } // 检查token并获取婚姻信息详情 Future checkTokenAndFetchMarriageInfo() async { final response = await _userApi.getMarriageInformationDetail(); if (response.data.isSuccess) { if (response.data.data == null) { } } } @override Widget build(BuildContext context) { return DoubleTapToExitWidget( child: Scaffold( backgroundColor: Colors.transparent, resizeToAvoidBottomInset: false, body: Stack( alignment: Alignment.bottomCenter, children: [ PageView( physics: const NeverScrollableScrollPhysics(), controller: pageController, children: [ homePage, // 使用成员变量引用 discoverPage, messagePage, minePage, ], ), MainTabBar( initialIndex: currentIndex, onTabChanged: (index) { currentIndex = index; pageController.jumpToPage(index); }, ), ], ), ), ); } }