presentViewController没有显示邮件模态视图控制器。我已经从presentmodalviewcontroller到presentViewController,但它没有给出任何错误,也没有呈现modalview。如何解决这个问题?
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc]init];
picker.mailComposeDelegate = self;
picker.navigationBar.tintColor = [UIColor colorWithHue:0.6 saturation:0.33 brightness:0.69 alpha:0];
NSString *lObjstringPtr = (NSString *)nil;
if(OPPORTUNITY_ENTITY_OBJECT_TYPE_CODE==m_cobjOwningGroup.m_cObjSelectedEntity.m_cObjectTypeCode) {
lObjstringPtr = [lObjstringPtr stringByAppendingFormat:@" To Follow Up"];
[picker setSubject:lObjstringPtr];
lObjstringPtr = (NSString *)nil;
} else
[picker setSubject:@""];
[picker setMessageBody:m_cObjemailBodyStrPtr isHTML:NO];
NSArray *toRecipients = [NSArray arrayWithObject:pEmailID];
[picker setToRecipients:toRecipients];
[self presentViewController:picker animated:YES completion:nil];
[picker release];
有两件事,一件是具体的,一件是一般的。
- 您似乎没有检查您的设备上是否设置了邮件。在您尝试显示邮件视图之前,您应该检查
[MFMailComposeViewController canSendMail]
的返回值,并且仅在YES
时显示控制器。 - 视图不显示的常见情况是控制器为
nil
。在presentViewController:
之前,您可能要检查(使用NSLog
或使用调试器)picker
不为零。