如何解决不能同时从 UIActivityController 打印和发送电子邮件
我正在尝试使用 iOS UIActivityCoontroller 共享一张票(我的构造)以进行打印和发送电子邮件。工单被格式化为 UISimpleTextPrintFormatter 和属性字符串。当对话框出现时,我可以选择打印或发送电子邮件,但不能同时选择两者。我的代码:
let str = NSAttributedString(string: displayString,attributes: attrs)
let ticket = [UISimpleTextPrintFormatter(attributedText: str)]
let ac = UIActivityViewController(activityItems: xxxxx,applicationActivities: nil)
当 xxxxx = 票证时,共享对话框提供标记和打印选项。
当 xxxxx = [str] 时,对话框提供电子邮件、消息、AirDrop、Dropbox 等。
当 xxxxx = [ticket,str] 时,对话框提供电子邮件、消息等,但不打印或标记。
第三种情况不应该包括所有活动并为每个活动提供适用的数据吗?我错过了什么? (iOS 14.2.1)
编辑:为了测试这一点,我创建了一个新项目,其中一个按钮基本上链接到上面的代码。观察到相同的行为。按预期共享工作时的个人资源。 (Text and print) 合并为一个ActivityItem时,不出现打印选项。
解决方法
这里的问题是票证变量是作为数组创建的。不应该。删除
中的大括号Let ticket = [UISimpleTextFormatter ...
line 使一切按预期工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。