我试图将系统定义的视图控制器(MFMailComposeViewController、TWTweetComposeViewController等)显示为模态视图。
但是在iOS 7中这些视图控制器不会出现(它们可以在iOS 5和iOS 6上运行)。
由我创建的视图控制器在iOS 7中出现(例如HogeViewController)。
我没有在viewDidLoad
或viewWillAppear
中调用presentViewController:animated:completion
。
有人有什么想法吗?
控制台日志:
init错误域=NSCocoaErrorDomain代码=4097,“无法完成操作。(Cocoa错误4097。)”
或者
_serviceViewControllerReady:error: 错误域=NSCocoaErrorDomain代码=4097,“无法完成操作。(Cocoa错误4097。)”
或者
Unbalanced calls to begin/end appearance transitions for .
TWTweetComposeViewController(不出现)
TWTweetComposeViewController *viewController = [[TWTweetComposeViewController alloc]init];
viewController.completionHandler = ^(TWTweetComposeViewControllerResult result){
NSLog(@"Result : %d",result);
};
[self presentViewController:viewController animated:YES completion:NULL];
日志
结果:0
MFMailComposeViewController(短暂出现并很快关闭)
- (void)send:(NSString*)email{
if ([MFMailComposeViewController canSendMail]) {
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
NSArray *toRecipients = @[email];
[picker setToRecipients:toRecipients];
[picker setSubject:@"Subject"];
[picker setMessageBody:@"Body" isHTML:NO];
[self.navigationController presentViewController:picker animated:YES completion:NULL];
}
}
- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error {
[self dismissViewControllerAnimated:YES completion:^{
NSLog(@"error:%@,result:%d",error.description,result);
}];
}
记录
_serviceViewControllerReady:error: 错误域=NSCocoaErrorDomain,代码=4097,“操作无法完成。(Cocoa错误4097。)” 开始/结束出现转换调用不平衡 for . error:(null),result:0