iPhone,Obj-C,在使用addSubview时,如何从操作表按钮单击使用应用程序内电子邮件?
几个月前,我发现了一些很棒的示例代码,可以在视图中添加一个“撰写”按钮,允许在应用程序中发送电子邮件 但是,我希望能够显示电子邮件,并将其与我的任何观点一起使用。 我有一个标准类/方法来显示actionsheet,因此我可以在所有视图中使用它 这是我班上另一个按钮的代码iPhone,Obj-C,在使用addSubview时,如何从操作表按钮单击使用应用程序内电子邮件?,iphone,objective-c,uiactionsheet,Iphone,Objective C,Uiactionsheet,几个月前,我发现了一些很棒的示例代码,可以在视图中添加一个“撰写”按钮,允许在应用程序中发送电子邮件 但是,我希望能够显示电子邮件,并将其与我的任何观点一起使用。 我有一个标准类/方法来显示actionsheet,因此我可以在所有视图中使用它 这是我班上另一个按钮的代码 -(UIViewController *)showHelpClickButtonAtIndex:(int)buttonIndex:(UIView *) vw:(UIViewController *)vc:(BOOL
-(UIViewController *)showHelpClickButtonAtIndex:(int)buttonIndex:(UIView *)
vw:(UIViewController *)vc:(BOOL)useNav:(HelpPage)page{
if (buttonIndex == CommonUIInfoHelpPagesBtnIdx) {
vc = [[HelpViewController alloc] initWithNibName:@"HelpView"
bundle:nil onPage:page];
[vw addSubview:vc.view];
return [vc autorelease];
下面是示例代码,我没有多次尝试使其正常工作
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setSubject:titleText.text];
NSString *emailBody = @"Whatever";
[picker setMessageBody:emailBody isHTML:YES];
picker.navigationBar.barStyle = UIBarStyleBlack;
[self presentModalViewController:picker animated:YES];
[picker release];
它主要是MFMailComposeViewController
并将presentModalViewController
替换为我遇到问题的addSubview
有人能给我指出正确的方向吗?根据MFMailComposeViewController的文档: 要显示此服务器管理的视图,请执行以下操作: 视图控制器,您可以使用 显示的标准技术 视图控制器。然而,最常见的 显示此接口的方法是以模式执行 使用presentModalViewController:animated:方法 第一句话告诉我们,您应该以常规方式之一显示mail composer的视图控制器;如果您正试图将视图控制器的视图作为子视图添加到现有UIView中,那么这不是Apple希望您使用的标准方式之一,因此可能无法工作或无法预测 与此相关的是苹果公司的建议,即UIViewController应该负责显示整个用户界面的一部分,而不仅仅是其中的一部分——你的方法似乎也与此背道而驰
因此,解决方案是像普通视图控制器一样呈现mail composer:modally,或推到导航堆栈上,或呈现为UIWindow下的俯视图,等等。Btw,如果您还提供了修改代码的示例,您的问题可能会更清楚。“没有我的多次尝试”让我们猜测你到底在尝试什么。