Browse Source

[fix]解决ios添加好友会员页返回键盘输入遮盖的问题

zk 2 months ago
parent
commit
59ff4a3cb8

+ 6 - 4
lib/module/add_friend/add_friend_dialog_controller.dart

@@ -67,9 +67,10 @@ class AddFriendDialogController extends BaseController {
   void _requestAddFriend() {
     AccountRepository accountRepository = AccountRepository.getInstance();
     if (accountRepository.memberIsExpired()) {
-      AddFriendLocateResultDialog.show(confirmOnTap: () {
+      AddFriendLocateResultDialog.show(confirmOnTap: () async {
         FocusScope.of(Get.context!).unfocus();
-        MemberPage.start(enterTyp: MemberPageType.addFriendToEnter);
+        await MemberPage.start(enterTyp: MemberPageType.addFriendToEnter);
+        hideKeyboard(Get.context!);
       });
     } else {
       friendsRepository.addFriendRequest(phone).then((_) {
@@ -77,9 +78,10 @@ class AddFriendDialogController extends BaseController {
         Get.back();
       }).catchError((error) {
         if (accountRepository.memberIsExpired()) {
-          AddFriendLocateResultDialog.show(confirmOnTap: () {
+          AddFriendLocateResultDialog.show(confirmOnTap: () async {
             FocusScope.of(Get.context!).unfocus();
-            MemberPage.start(enterTyp: MemberPageType.addFriendToEnter);
+            await MemberPage.start(enterTyp: MemberPageType.addFriendToEnter);
+            hideKeyboard(Get.context!);
           });
         } else {
           if (error is ServerErrorException) {

+ 3 - 3
lib/module/member/activity/member_activity_page.dart

@@ -25,11 +25,11 @@ import 'member_activity_controller.dart';
 class MemberActivityPage extends BasePage<MemberActivityController> {
   const MemberActivityPage({super.key});
 
-  static void start({bool isOffAll = false}) {
+  static Future<bool> start({bool isOffAll = false}) async {
     if (isOffAll) {
-      Get.offAllNamed(RoutePath.memberActivity);
+      return await Get.offAllNamed(RoutePath.memberActivity) == true;
     } else {
-      Get.toNamed(RoutePath.memberActivity);
+      return await Get.toNamed(RoutePath.memberActivity) == true;
     }
   }
 

+ 4 - 4
lib/module/member/member_page.dart

@@ -49,12 +49,12 @@ class MemberPage extends BasePage<MemberController> {
 
   late MemberPageType? pageType = MemberPageType.universalAccessEnter;
 
-  static void start(
-      {MemberPageType? enterTyp = MemberPageType.universalAccessEnter}) {
+  static Future<bool> start(
+      {MemberPageType? enterTyp = MemberPageType.universalAccessEnter}) async {
     if (enterTyp == MemberPageType.activity) {
-      MemberActivityPage.start();
+      return await MemberActivityPage.start() == true;
     } else {
-      Get.toNamed(RoutePath.member, arguments: enterTyp);
+      return await Get.toNamed(RoutePath.member, arguments: enterTyp) == true;
     }
   }