From 17af0c0e8da76510472c25c1858c3bf8e94cab35 Mon Sep 17 00:00:00 2001 From: wangzhaoyao Date: Thu, 25 Aug 2022 21:40:52 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E7=9B=B8=E6=9C=BA=E5=92=8C?= =?UTF-8?q?=E7=9B=B8=E5=86=8C=E7=9A=84=E5=BC=B9=E6=A1=86=E9=80=89=E6=8B=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Classes/Api/MOPAppletDelegate.m | 36 +++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/ios/Classes/Api/MOPAppletDelegate.m b/ios/Classes/Api/MOPAppletDelegate.m index 027fa9c..64d15f6 100644 --- a/ios/Classes/Api/MOPAppletDelegate.m +++ b/ios/Classes/Api/MOPAppletDelegate.m @@ -8,6 +8,7 @@ #import "MOPAppletDelegate.h" #import "MopPlugin.h" #import "MopCustomMenuModel.h" +#import @interface NSString (FATEncode) - (NSString *)fat_encodeString; @@ -144,15 +145,40 @@ static NSString *scheme = @"fatae55433be2f62915";//App对应的scheme } - (void)chooseAvatarWithAppletInfo:(FATAppletInfo *)appletInfo bindChooseAvatar:(void (^)(NSDictionary *result))bindChooseAvatar { - - NSDictionary *params = @{@"name":@"chooseAvatar"}; - FlutterMethodChannel *channel = [[MopPlugin instance] methodChannel]; - [channel invokeMethod:@"extensionApi:chooseAvatar" arguments:params result:^(id _Nullable result) { - !bindChooseAvatar?: bindChooseAvatar(result); + UIAlertController *alertController = [UIAlertController alertControllerWithTitle:nil + message:nil + preferredStyle:UIAlertControllerStyleActionSheet]; + UIAlertAction *chooseAlbumAction = [UIAlertAction actionWithTitle:@"从相册选择" style:UIAlertActionStyleDefault handler:^(UIAlertAction *_Nonnull action) { + NSDictionary *params = @{@"name":@"chooseAvatarAlbum"}; + + FlutterMethodChannel *channel = [[MopPlugin instance] methodChannel]; + [channel invokeMethod:@"extensionApi:chooseAvatarAlbum" arguments:params result:^(id _Nullable result) { + !bindChooseAvatar?: bindChooseAvatar(result); + }]; }]; + UIAlertAction *photoAction = [UIAlertAction actionWithTitle:@"拍照" style:UIAlertActionStyleDefault handler:^(UIAlertAction *_Nonnull action) { + NSDictionary *params = @{@"name":@"chooseAvatarPhoto"}; + + FlutterMethodChannel *channel = [[MopPlugin instance] methodChannel]; + [channel invokeMethod:@"extensionApi:chooseAvatarPhoto" arguments:params result:^(id _Nullable result) { + !bindChooseAvatar?: bindChooseAvatar(result); + }]; + }]; + + UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction *_Nonnull action){ + bindChooseAvatar(@{}); + }]; + [alertController addAction:chooseAlbumAction]; + [alertController addAction:photoAction]; + [alertController addAction:cancelAction]; + UIViewController *topVC = [MOPTools topViewController]; + [topVC presentViewController:alertController animated:YES completion:nil]; } + + + @end @implementation NSString (FATEncode)