2012-10-07 80 views
0

通常情況下,當我使用mfmailcomposeviewcontroller像這樣:mfmailcomposeviewcontroller崩潰在iOS 6

if ([MFMailComposeViewController canSendMail]) 
{ 

     MFMailComposeViewController *mcvc = [[MFMailComposeViewController alloc] init]; 
     mcvc.mailComposeDelegate = self; 

     [mcvc setSubject:@"Check out these diamonds!"]; 

     [self presentModalViewController:mcvc animated:YES]; 
     [mcvc release]; 
} 

現在我得到的iOS 6的這個錯誤:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', 
reason: 'Could not load NIB in bundle: 'NSBundle </Users/ericshorr/Library/Application Support/iPhone Simulator/6.0/Applications/7904C2AD-23E1-4211-B5FA-A1F03CB3A875/SDE Group Diamonds.app> (loaded)' with name 'MFMailComposeInternalViewController'' 

回答

0

因爲你需要安裝一個郵件帳戶在你的iPad,以便能夠在iOS版6.轉到發送郵件至郵件,通訊錄,在設置壓延,然後添加一個郵件帳戶。

0

我最近有一個類似的問題,我增加了一個類別的UIViewController,這樣我就可以重寫init和追加改性劑添加到筆尖的名字。是這樣的...

self = [self initWithNibName:[nibName stringByAppendingString:@"_modifier"] bundle:nil]; 

雖然UIViewController的類別並不在試圖啓動MFMailComposeViewController類#imported,它是在被添加作爲一個子視圖控制器不同類的頭進口。因此,MFMailComposeViewController試圖找到一個名爲:MFMailComposeInternalViewController_modifier的NIB。

似乎在事後很明顯,但是這是爲了趕上一場噩夢,所以我想我會在這裏添加它作爲一個可能的解決方案,爲別人誰在一個類似的情況運行。