【问题标题】:MFMailComposeViewController is not interactiveMFMailComposeViewController 不是交互式的
【发布时间】:2010-10-05 07:11:32
【问题描述】:

我在两个视图控制器中使用以下代码;一种是通过按下按钮触发,另一种是通过点击表格单元格触发。首先,它工作正常。

在第二个中,由表格单元格点击触发,邮件编辑器出现,字段填写正确,但光标和键盘没有出现,因此您实际上无法在邮件消息中输入任何内容。 (您可以毫无问题地点击取消或发送。)知道有什么问题吗?谢谢!

if ([MFMailComposeViewController canSendMail]) {
    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.mailComposeDelegate = self;

    [picker setSubject:@"Message subject"];
    [picker setMessageBody:@"Sample message" isHTML:NO];

    [self presentModalViewController:picker animated:YES];

    [picker release];
} else {
    NSLog(@"cant send mail");
}

【问题讨论】:

  • 正如您可能怀疑的那样,第二个 UIViewController 仍然是第一响应者,而第一个将第一响应者控制权正确地传递给邮件撰写者。我想通了这么多。但我不知道为什么。

标签: iphone uiviewcontroller mfmailcomposeviewcontroller


【解决方案1】:

我发现了问题所在,但这绝对是荒谬的——可能是 SDK 中的一个错误。我使用 UIModalTransitionStyleFlipHorizo​​ntal 呈现问题 UIViewController,而我使用默认转换样式呈现健康的 UIViewController。关于 UIModalTransitionStyleFlipHorizo​​ntal 的某些东西似乎使呈现的视图控制器贪婪地成为第一响应者;它不会放弃已启动的 MFMailComposeViewController 的第一响应者状态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-25
    • 1970-01-01
    • 1970-01-01
    • 2022-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多