加载模型视图时出现问题

时间:2010-05-31 15:36:43

标签: iphone objective-c cocoa

我已经为邮件应用程序编写了代码 像:

{
  MFMailComposeViewController *picker=[MFMailComposeViewController alloc] init];
  .........
  .........
  [self.navigationController pushViewController:picker.view animated:YES]; 
}

视图未加载。必须编写

[self presentModalViewController:picker animated:YES];

因为当我写上面这行时,它的效果非常好。

1 个答案:

答案 0 :(得分:0)

你真的有导航控制器吗?您需要提供更多背景信息,例如包含您发布的代码的类的超类。 以模态方式呈现视图并在导航堆栈中是非常不同的。

模态视图从屏幕底部向上滑动并填充整个屏幕,以便您只能执行视图允许的操作(它隐藏了导航栏和标签栏之类的内容) (比如在日历应用中添加新事件)

导航控制器最常用于表格视图,并将旧视图向左滑动,从右侧滑动新视图(如设置应用程序)

从您发布的代码的外观来看,您希望以模态方式呈现视图,并且您不需要使用导航控制器将视图推到屏幕上的行(我猜测它不存在? )

ALSO: 这行代码无论如何都是错误的:

[self.navigationController pushViewController:picker.view animated:YES];

presentModalViewController请求一个viewcontroller而不是UIView。所以你需要在选择器后删除.view。