使用UIActivityViewController发送UIImage的控制文件名称
我与UIActivityViewController
共享一个图像,以及一个URL和一些文本。 一切工作很好,除了图像文件名称总是'图像-1'没有扩展名。 在某些情况下,这会导致一个很大的问题,比如在邮件应用程序中,根本不会打开一个图像。
图像由应用程序生成,并作为UIImage
存在。
有没有一种方法来控制文件名称并将正确的扩展名添加到图像?
如果它的应用程序生成的图像( UIImage
引用),那么你可以使用下面的代码:
[mailComposer addAttachmentData: UIImagePNGRepresentation(viewImage) mimeType:@"" fileName:@"myImage.png"];
我为我的项目使用了相同的代码,可以使用UIImagePNGRepresentation()
方法创build自己的PNG格式图像。
如果您需要JPEG图像,则使用UIImageJPEGRepresentation()
方法。 然后使用.jpg
扩展名更改上述方法中的文件名。
有关这两种方法的更多详细信息,请参阅UIKit类参考
我知道控制UIImage的文件名或编码types的唯一方法是将其保存到设备上的文件,然后将文件的URL提供给UIActivityViewController。 看看这个答案你可以用来完成这个代码。 这种方法有一些明显的缺陷,但对于大多数应用程序来说可能是足够好的。