diff --git a/lib/pages/login/controller.dart b/lib/pages/login/controller.dart index 8155913d..7eccc35a 100644 --- a/lib/pages/login/controller.dart +++ b/lib/pages/login/controller.dart @@ -698,9 +698,10 @@ class LoginPageController extends GetxController } } - static Future switchAccountDialog(BuildContext context) { + static Future? switchAccountDialog(BuildContext context) { if (Accounts.account.isEmpty) { - return SmartDialog.showToast('请先登录'); + SmartDialog.showToast('请先登录'); + return Get.toNamed('/loginPage'); } final selectAccount = Map.of(Accounts.accountMode); final options = { diff --git a/lib/pages/setting/view.dart b/lib/pages/setting/view.dart index 489c9a47..af611a17 100644 --- a/lib/pages/setting/view.dart +++ b/lib/pages/setting/view.dart @@ -40,7 +40,7 @@ class SettingPage extends StatefulWidget { class _SettingPageState extends State { late SettingType _type = SettingType.privacySetting; - final RxBool _noAccount = Accounts.accountMode.isEmpty.obs; + final RxBool _noAccount = Accounts.account.isEmpty.obs; late bool _isPortrait; final List<_SettingsModel> _items = const [ @@ -147,6 +147,12 @@ class _SettingPageState extends State { ); } + @override + void dispose() { + _noAccount.close(); + super.dispose(); + } + void _toPage(SettingType type) { if (_isPortrait) { Get.toNamed('/${type.name}'); @@ -189,7 +195,7 @@ class _SettingPageState extends State { ListTile( onTap: () => LoginPageController.switchAccountDialog(context), leading: const Icon(Icons.switch_account_outlined), - title: const Text('设置账号模式'), + title: Text('设置账号模式', style: titleStyle), ), Obx( () => _noAccount.value