2011-06-22 73 views
6

我註冊在這個環節中描述自己的自定義CFBundleDocumentTypes對文件類型:How do I register a custom filetype in iOSIOS自定義圖標電子郵件附件

一切工作正常,除了當我發送郵件通過MFMailComposeViewController還有這片平原上默認的附件圖標,而不是我自己的。 當我收到郵件時,顯示我自己的圖標。發送郵件時是否可以更改默認的MFMailComposeViewController-attachment圖標?

感謝您的幫助, 馬丁

+0

這是很久以前,但你找到答案? – Mrwolfy

回答

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> 

代碼片段來源:Damien DeVille