使用activityController共享多个图像和文本不起作用 [英] Sharing multiple images AND text using activityController is not working

查看:0
本文介绍了使用activityController共享多个图像和文本不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为我的公司制作一个销售应用程序,以图像和文本的形式通过电子邮件发送图表,但我的应用程序出现问题。

由于某种原因,我无法同时发送多个图像和文本,当激活下面的代码时,只发送文本。

我进行了三次检查,图像不是空的,我可以共享文本、单独的多个图像或文本和单个图像。

此外,我只发送两张图片,仅供手机版使用。

func EmailMultipleImages(imageArray: [UIImage], emailSubject: String, emailBodyText : String) {
    

    print("Image array (imageArray.count)")
    do {
        let shareContent: [Any] = [imageArray, emailBodyText]
        
        //Multiple images alone
        //let shareContent: [Any] = [imageArray]
        
        //Text alone
        //let shareContent: [Any] = [emailBodyText]
        
        //One image and text
        //let shareContent: [Any] = [imageArray[0], emailBodyText]
       
        let activityController = UIActivityViewController(activityItems: shareContent, applicationActivities: nil)

        activityController.setValue(emailSubject, forKey: "Subject")
        viewController!.present(activityController, animated: true, completion: nil)
    }
    
    catch {
        print("Error print mulitple images (error)")
    }

}

推荐答案

使该数组成为平面对象,它应该可以工作。

示例:

func share() {
    let activityItems = [
        "Title",
        "Body",
        UIImage(systemName: "keyboard")!,
        UIImage(systemName: "square.and.arrow.up")!
    ] as [Any]
    let vc = UIActivityViewController(activityItems: activityItems, applicationActivities: nil)
    vc.setValue("Testing", forKey: "Subject")
    self.present(vc, animated: true, completion: nil)
}

输出:

这篇关于使用activityController共享多个图像和文本不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆