iOS UIActivityViewController 组头处理

0x00 情形一

复制代码
- (void)shareAction1
{
    // 当前 View 转成图片
    UIImage *image = [self snapshotImage:self.view];
    NSArray *activityItems = @[image];
    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
    activityVC.completionWithItemsHandler = ^(UIActivityType  _Nullable activityType, BOOL completed, NSArray * _Nullable returnedItems, NSError * _Nullable activityError) {
        if (activityType == UIActivityTypeSaveToCameraRoll) {
            // 保存到相册后,可以给个提示
        }
    };
    [self presentViewController:activityVC animated:YES completion:nil];
}

1、应用未设置 AppIcon 图标时

组头是这样的

2、应用设置了 AppIcon 图标时

组头是这样的


0x01 情形二

复制代码
- (void)shareAction2
{
    // 当前 View 转成图片
    UIImage *image = [self snapshotImage:self.view];
    NSString *text = @"Haomissyou";  // 多了这个
    NSArray *activityItems = @[image, text];
    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
    activityVC.completionWithItemsHandler = ^(UIActivityType  _Nullable activityType, BOOL completed, NSArray * _Nullable returnedItems, NSError * _Nullable activityError) {
        if (activityType == UIActivityTypeSaveToCameraRoll) {
            // 保存到相册后,可以给个提示
        }
    };
    [self presentViewController:activityVC animated:YES completion:nil];
}

添加了文字后

组头是这样的


0x02 情形三

复制代码
- (void)shareAction3
{
    // 换成这个
    // 读取工程中的图片(或者先保存图片到沙盒,再读取文件url)
    NSString *path = [[NSBundle mainBundle] pathForResource:@"video2_cover" ofType:@"png"];
    NSURL *url = [NSURL fileURLWithPath:path];
    
    NSArray *activityItems = @[url];
    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
    activityVC.completionWithItemsHandler = ^(UIActivityType  _Nullable activityType, BOOL completed, NSArray * _Nullable returnedItems, NSError * _Nullable activityError) {
        if (activityType == UIActivityTypeSaveToCameraRoll) {
            // 保存到相册后,可以给个提示
        }
    };
    [self presentViewController:activityVC animated:YES completion:nil];
}

换成图片 URL 后,添加了图片url

组头是这样的


相关推荐
shadowcz00720 小时前
苹果不卷AI了:iOS 27要让第三方模型“竞标“进系统
人工智能·ios
90后的晨仔21 小时前
Combine 错误处理与恢复:构建健壮的应用防线
ios
90后的晨仔21 小时前
Combine 多线程与调度器:掌控数据流的执行线程
ios
冰凌时空21 小时前
iOS 架构模式全景图:MVC / MVVM / VIPER / Clean Architecture 选型指南
ios·openai·ai编程
冰凌时空1 天前
Swift 类型系统入门:从 Int、String 到自定义类型
前端·ios·ai编程
pop_xiaoli1 天前
【iOS】autoreleasePool
ios·objective-c·cocoa
秋雨梧桐叶落莳2 天前
iOS——ZARA仿写项目
学习·macos·ios·objective-c·cocoa
人月神话Lee2 天前
【图像处理】二值化与阈值——从灰度到黑白的决策
ios·ai编程·图像识别
美狐美颜SDK开放平台2 天前
美颜SDK接入流程详解:Android、iOS、鸿蒙兼容方案解析
android·人工智能·ios·华为·harmonyos·美颜sdk·视频美颜sdk
90后的晨仔2 天前
Combine 操作符 —— 打造强大的数据处理管道
ios