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

组头是这样的


相关推荐
z***y86222 分钟前
Swift在iOS中的Xcode
ios·xcode·swift
AirDroid_cn35 分钟前
iOS 18 后台应用偷跑流量,如何限制?
macos·ios·cocoa
Q688238861 小时前
Comsol仿真金属纳米颗粒超表面的多极分解之旅
xcode
明君879973 小时前
Flutter 图纸标注功能的实现:踩坑与架构设计
android·ios
江东小bug王4 小时前
深入理解 UINavigationController:生命周期、动画优化与性能调优
ios
Lexiaoyao205 小时前
Apple StoreKit 2 开发指南
ios·apple
2501_915106321 天前
iOS App 测试工具全景分析,构建从开发调试到线上监控的多阶段工具链体系
android·测试工具·ios·小程序·uni-app·iphone·webview
Digitally1 天前
如何通过蓝牙将联系人从 iPhone 传输到 Android
android·ios·iphone
90后的晨仔1 天前
2025年11月27日年解决隐私清单导致审核总是提示二进制无效的问题
ios
songgeb1 天前
iOS Audio后台模式下能否执行非Audio逻辑
ios·swift