@@ -18,12 +18,12 @@ import 'package:loftify/Screens/Login/login_by_captcha_screen.dart';
1818import 'package:loftify/Screens/Navigation/dynamic_screen.dart' ;
1919import 'package:loftify/Screens/Navigation/mine_screen.dart' ;
2020import 'package:loftify/Screens/refresh_interface.dart' ;
21+ import 'package:loftify/Utils/ilogger.dart' ;
2122import 'package:provider/provider.dart' ;
2223
2324import '../Utils/app_provider.dart' ;
2425import '../Utils/constant.dart' ;
2526import '../Utils/enums.dart' ;
26- import '../Utils/hive_util.dart' ;
2727import '../Utils/lottie_util.dart' ;
2828import '../Utils/responsive_util.dart' ;
2929import '../Utils/route_util.dart' ;
@@ -77,7 +77,6 @@ class PanelScreenState extends State<PanelScreen>
7777 controller: darkModeController,
7878 );
7979 });
80- fetchUserInfo ();
8180 }
8281
8382 popAll () {
@@ -115,46 +114,27 @@ class PanelScreenState extends State<PanelScreen>
115114 }
116115 }
117116
118- fetchUserInfo () async {
119- var userInfo = await HiveUtil .getUserInfo ();
120- if (userInfo == null ) {
121- logout ();
122- return ;
123- }
124- }
125-
126- logout () {
127- unlogin = true ;
128- popAll ();
129- _pageList = [];
130- setState (() {});
131- }
132-
133- login () {
134- unlogin = false ;
135- initPage ();
136- setState (() {});
137- }
138-
139117 Future <void > initPage () async {
140- var userInfo = await HiveUtil .getUserInfo ();
141- if (userInfo == null ) {
142- _pageList = [];
143- } else {
144- _keyList = [
145- homeScreenKey,
146- searchScreenKey,
147- GlobalKey (),
148- GlobalKey (),
149- ];
150- _pageList = [
151- HomeScreen (key: _keyList[0 ]),
152- SearchScreen (key: _keyList[1 ]),
153- DynamicScreen (key: _keyList[2 ]),
154- MineScreen (key: _keyList[3 ]),
155- ];
156- jumpToPage (appProvider.sidebarChoice.index);
118+ _keyList = [
119+ homeScreenKey,
120+ searchScreenKey,
121+ GlobalKey (),
122+ GlobalKey (),
123+ ];
124+ _pageList = [
125+ HomeScreen (key: _keyList[0 ]),
126+ SearchScreen (key: _keyList[1 ]),
127+ DynamicScreen (key: _keyList[2 ]),
128+ MineScreen (key: _keyList[3 ]),
129+ ];
130+ if (mounted) setState (() {});
131+ try {
132+ ILogger .debug (
133+ "init panel page and jump to ${appProvider .sidebarChoice .index .clamp (0 , _pageList .length - 1 )}" );
134+ } catch (e, t) {
135+ ILogger .error ("Failed to init panel page" , e, t);
157136 }
137+ jumpToPage (appProvider.sidebarChoice.index.clamp (0 , _pageList.length - 1 ));
158138 }
159139
160140 void jumpToPage (int index) {
@@ -166,11 +146,11 @@ class PanelScreenState extends State<PanelScreen>
166146 mixin ? .onTapBottomNavigation ();
167147 } else {
168148 _currentIndex = index;
169- if (mounted) setState (() {});
170149 if (_pageController.hasClients) {
171150 _pageController.jumpToPage (index);
172151 }
173152 }
153+ if (mounted) setState (() {});
174154 }
175155
176156 void refreshScrollControllers () {
0 commit comments