【问题标题】:IOS Custom Icon Email AttachmentIOS自定义图标邮件附件
【发布时间】:2011-06-22 13:45:56
【问题描述】:

我注册了自己的自定义 CFBundleDocumentTypes 文件类型,如以下链接所述:How do I register a custom filetype in iOS

一切正常,除了当我通过 MFMailComposeViewController 发送邮件时,仍然有这个普通的默认附件图标而不是我自己的。 当我收到邮件时,会显示我自己的图标。发送邮件时是否可以更改默认的 MFMailComposeViewController-attachment 图标?

感谢您的帮助, 马丁

【问题讨论】:

  • 这是很久以前的事了,你找到答案了吗?

标签: iphone ios email cfbundleidentifier mfmailcomposer


【解决方案1】:

当您添加附件时,您是否为您的自定义文件类型正确指定了 MIME 类型?也许您需要将您的 UTI 显式转换为 MIME 类型,然后在使用 MFMailComposeViewController 方法时指定:

- (void)addAttachmentData:(NSData*)attachment mimeType:(NSString*)mimeType fileName:(NSString*)filename

将 UTI 转换为 MIME 类型

NSString *filePath = ... // file path for your file of a custom type.
CFStringRef fileExtension = (__bridge CFStringRef)[filePath pathExtension];
CFStringRef UTI = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, fileExtension, NULL);
CFStringRef MIMEType = UTTypeCopyPreferredTagWithClass(UTI, kUTTagClassMIMEType);
CFRelease(UTI);
NSString *MIMETypeString = (__bridge_transfer NSString *)MIMEType;

确保添加和导入以下框架:

#import <MobileCoreServices/MobileCoreServices.h>
#import <CoreServices/CoreServices.h>

代码sn-p来源:Damien DeVille

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-07
    • 2011-05-24
    • 1970-01-01
    • 2012-09-14
    • 2011-03-06
    • 2021-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多