Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c MFMailComposeViewController立即解散_Objective C_Ios_Mfmailcomposeviewcontroller_Mfmailcomposer - Fatal编程技术网

Objective c MFMailComposeViewController立即解散

Objective c MFMailComposeViewController立即解散,objective-c,ios,mfmailcomposeviewcontroller,mfmailcomposer,Objective C,Ios,Mfmailcomposeviewcontroller,Mfmailcomposer,现在的情况是将要展示的MFMailComposeViewController。我看到它做了一半,但后来被驳回了 这就是错误: _serviceViewControllerReady:错误:错误域=\u UIViewServiceInterfaceErrorDomain代码=3“该操作无法完成。(\u UIViewServiceInterfaceErrorDomain错误3)。” 这是我介绍MFMailComposeViewController的源代码: -(void) MailExecute {

现在的情况是将要展示的MFMailComposeViewController。我看到它做了一半,但后来被驳回了

这就是错误:

_serviceViewControllerReady:错误:错误域=\u UIViewServiceInterfaceErrorDomain代码=3“该操作无法完成。(\u UIViewServiceInterfaceErrorDomain错误3)。”

这是我介绍MFMailComposeViewController的源代码:

-(void) MailExecute {
    if ([MFMailComposeViewController canSendMail]) 
    {
        MFMailComposeViewController *mailViewController = [[MFMailComposeViewController alloc] init];   
        mailViewController.mailComposeDelegate = self;
        [mailViewController setSubject:NSLocalizedString(@"Check this new look", @"")];
        [mailViewController setMessageBody: @"my new look" isHTML:YES];

        [self presentModalViewController:mailViewController animated:YES];

        [mailViewController release];
    }
    else 
    {
        UIAlertView *alertInternal = [[UIAlertView alloc]
                                      initWithTitle: NSLocalizedString(@"Notification", @"")
                                      message: NSLocalizedString(@"You have not configured your e-mail client.", @"")
                                      delegate: nil
                                      cancelButtonTitle:NSLocalizedString(@"OK", @"")
                                      otherButtonTitles:nil];
        [alertInternal show];
        [alertInternal release];
    }
}
奇怪的是,有时会发生,有时不会。
请帮帮我!我花了将近一个工作日来解决这个问题,但没有成功。

您的
视图中是否有任何可以解除视图控制器的方法


如果没有,您能否为显示MFMailComposeViewController的ViewController发布更多代码?

您的代码看起来是正确的,如前所述,错误消息强烈表明这与
UIView
的正确性有关(不是
MFMail
)。问题几乎肯定存在于代码中的其他地方,并且可能很难排除故障

需要寻找的一些东西:

  • 同时或错误发生的其他动画或视图控制器转换/解除()
  • 当然,发布/保留问题
  • 如果这些看起来都不是修复方法,请尝试注释调用此方法的视图控制器中发生的所有其他情况,然后看看它是否有效


    如果您仍然无法使其工作,请提供最简单的失败代码版本,以便我们进一步排除故障。:)

    iOS 6中不推荐使用modelViewController, 使用


    我知道这是迟来的答复,但可能对其他人有所帮助


    刚才遇到了同样的问题,通过重置模拟器,我可以很好地解决同样的问题。请告诉我这是否有帮助。

    当显示远程视图控制器(视图控制器在另一个进程中运行)时,可能会出现此问题,如错误消息中的所示

    我在显示
    SKStoreProductViewController
    时遇到了这个问题,这也是一个问题。我不确定根本原因是什么;对我来说,唯一触发它的似乎是反复显示视图控制器

    对于
    SKStoreProductViewController
    ,我能够在
    loadProductWithParameters:completionBlock:
    方法的完成块中检查此错误。
    MFMailComposeViewControllerDelegate
    是否会给您一个关于此错误的回调?可能您所能做的就是侦听此错误并向用户显示错误消息


    我们可能都应该对此提交一份苹果雷达文件。

    在我将MFMailComposeViewController存储在我的类的一个强属性中而不是一个局部变量之后,我再也无法重现这种自责行为了。

    对于我来说,调用附件函数时的问题是一个不正确的参数。如果您在电子邮件附件中遇到此问题,我建议使用中的解决方案,如下所示:

    NSString *path = [self getDatabaseFilePath];
    NSData *myData = [NSData dataWithContentsOfFile:path];
    [picker addAttachmentData:myData mimeType:@"application/x-sqlite3" fileName:[path lastPathComponent]];
    

    我面临同样的问题,解决办法是:

    我删除了整个应用程序外观相关的代码,如

    [[UILabel appearance]setText:@""] 
    
    并替换为代码

    [[UILabel appearanceWhenContainedIn:[self class], nil] setText:@""];
    

    现在它工作正常,所以要注意整个应用程序外观的更改:它可能是导航栏外观,等等

    MFMailComposeViewController*mailComposer=[[MFMailComposeViewController alloc]init]

    if ([MFMailComposeViewController canSendMail])
    {
        mailComposer.mailComposeDelegate = self;
        [mailComposer setToRecipients:[NSArray arrayWithObject:@"support@kapsie.com"] ];
        [mailComposer setSubject:@"Kapsie App Contact Support"];
        [mailComposer setMessageBody:@"Type Your Feedback message here" isHTML:NO];
        [self presentViewController:mailComposer animated:YES completion:nil];
    }
    

    使用上述代码并在设备上进行检查。

    当您的应用程序在设备或模拟器上运行时,您会出现此异常?很可能与mailComposeView无关,但UIView总体上与quickLook有类似的错误提示。还在调试…嗨,JOM,你发现这个错误有什么新的地方吗?你添加了MessageUI.framework吗?嘿,我想知道你是否解决了这个问题。我也有这个问题,但只是在某些情况下,我不能复制它!谢谢你的帮助。我的主管正在接管。所以我不会再检查它了。我很确定ViewDidEverge或ViewWillEverge没有什么问题。但是我不再调查了,所以谢谢你的帮助。我不再调查这个bug了。谢谢您的帮助。您可能需要标记此问题。这个问题与iOS编程有关吗?
    if ([MFMailComposeViewController canSendMail])
    {
        mailComposer.mailComposeDelegate = self;
        [mailComposer setToRecipients:[NSArray arrayWithObject:@"support@kapsie.com"] ];
        [mailComposer setSubject:@"Kapsie App Contact Support"];
        [mailComposer setMessageBody:@"Type Your Feedback message here" isHTML:NO];
        [self presentViewController:mailComposer animated:YES completion:nil];
    }