MFMailComposeViewController 问题

MFMailComposeViewController problems

所以我有一个 MFMailComposeViewController,当我点击一个按钮时我会调用它,我有一个 if 语句来检查 UILabel 等于什么以及设备是否可以像这样发送邮件

if ([conditionlabel  isEqual: @"Fair"] && [MFMailComposeViewController canSendMail]) {
    NSString *emailBody = [NSString stringWithFormat:@"Product:%@    Make:%@   Year Manufactured:%@  Description:%@  Condition:Fair Email:%@",inputProduct,inputMake,inputYear,inputDescript, inputEmail];
    NSArray *recipient = [NSArray arrayWithObject:@"LoveShackElectronics@gmail.com"];
    MFMailComposeViewController *SuperLovedEmail = [[MFMailComposeViewController alloc]init];
    [SuperLovedEmail setTitle:emailTitle];
    [SuperLovedEmail setToRecipients:recipient];
    [SuperLovedEmail setMessageBody:emailBody isHTML:NO];
    [SuperLovedEmail setUserActivity:false];
    [self presentViewController:SuperLovedEmail animated:YES completion:nil];

在此之后我有一个 else 语句发出警报并显示它。但出于某种原因,它总是 returns 错误,即使在我知道通过邮件应用程序登录并能够发送邮件的设备上也只显示警报。

你的意思是[conditionLabel.text isEqual:@"Fair"].

您目前正在比较 UILabelNSString。那永远不会是真的。您需要比较标签的 text.

如果您使用 isEqualToString: 而不是 isEqual:,会有帮助的一件事。

此外,您真的不应该检查标签的值。一个标签就是一个视图。视图并不意味着是数据源。你应该有你检查的实际数据。