2012-11-22 50 views
3

所以這個主題大多是自我解釋。當我踏入MFMailComposeViewController在canSendMail上超時?

if ([MFMailComposeViewController canSendMail] && [sender.titleLabel.text isEqualToString:@"Contact Support"]) 
     [self displaySupportComposerSheet]; 
    else if([MFMailComposeViewController canSendMail]) 
     [self displayDarrenComposerSheet]; 

我在控制檯中這條消息:超時消息郵件,以確定CanSendMail狀態

我也試了一下,似乎是在做郵件撰寫,這是

的舊式
Class mailClass = (NSClassFromString(@"MFMailComposeViewController")); 

我仍然收到相同的信息。有任何想法嗎?

另外,它似乎並不喜歡它,當我讓MFMailComposeViewController屬性,而不是每個方法的局部變量,爲什麼呢?

+0

ClassFromString是「舊式」,因爲大約3.0,類可能不可用。首先查找類並檢查nil是檢測服務可用性的一種方法。你現在可以放下它。作爲一個調查步驟,您可以剝離所有其他代碼,只需將BOOL設置爲canSendMail的結果即可。 NSLog(@「可以發送郵件=%d」,theBool);在下一行。在那裏放置一個斷點並運行(不要步驟)。查看是否在命中斷點之前獲取控制檯消息。 – danh

+0

您正在嘗試使用哪個ios版本? –

+0

這與iOS 6有關。我主要是搞亂了它,因爲當第一次運行應用程序並首次單擊郵件按鈕時,它會滯後一點,很可能是因爲在調用方法時實例化MFMailComposeViewController,所以這就是爲什麼我開始搞砸了。 –

回答

0

在我打電話給[[MFMailComposer alloc] init]之前,我在撰寫大型PDF文件時將此錯誤添加爲附件。當我將作曲家的創作移動到PDF創作者大量使用內存之前,我不再在日誌中看到這個錯誤。

相關問題