真的,真的很奇怪的错误
我有一个在 iOS5/.1 中运行良好的应用程序,现在我在使用 iOS6 时遇到了一些转换问题,但这一个令人困惑。
我有一些启动邮件编写器的代码,并且从 iOS 6 开始,它会导致崩溃并出现以下错误:
* 断言失败 -[UICGColor encodeWithCoder:], /SourceCache/UIKit/UIKit-2372/UIColor.m:1191 2012-09-26 02:14:38.044 MyCQs Medical[2126:1b03] *由于未捕获的异常而终止应用程序' NSInternalInconsistencyException', reason: '只支持 RGBA 或 White 颜色空间,这种方法是 hack。
有什么建议么?通过反复试验注释掉各种行,似乎是导致错误的 alloc/init 行,尽管当所有行都未注释时,所有 NSLogs 都被执行,包括“present”,它表示应该调用的所有内容,已经。该应用程序在邮件撰写器出现在屏幕上之前崩溃,我非常感谢这里的任何建议
if (indexPath.row == 3) {
if([MFMailComposeViewController canSendMail]){
mailComposer = [[MFMailComposeViewController alloc]init];
NSLog(@"Alloc, init");
mailComposer.mailComposeDelegate = self;
NSLog(@"Set delegate");
NSArray *toArray = [[NSArray alloc]initWithObjects:@"john@doe.com", nil];
NSLog(@"To array");
[mailComposer setToRecipients:toArray];
NSLog(@"To recipients");
[mailComposer setSubject:@"Message from a MyCQs user!"];
NSLog(@"Subject");
NSLog(@"About to present mail composer");
[[mailComposer navigationBar] setTintColor:[UIColor blackColor]];
[self presentModalViewController:mailComposer animated:YES];
NSLog(@"Present");
}
}