MFMailComposeViewController实际上是一个导航控制器?

时间:2010-11-21 15:26:14

标签: iphone cocoa-touch messageui

当我尝试推送我的MFMailComposeViewController时,它说我无法推送导航控制器?!嗯......不管怎么说。

基本上我的所有视图控制器实际上都是CustomUIViewController的子类,它会自动从导航栏中删除标题视图(因为我在导航栏中有一个徽标)。

以模态方式呈现我的MFMailComposeViewController将标题重新放入其中,因为我无法将其作为子类CustomUIViewController(或者我可以吗?我不知道?)。

所以我真的需要一种从MFMailComposeViewController中删除标题视图的方法。

由于

汤姆

3 个答案:

答案 0 :(得分:0)

考虑到标题视图包含“取消”和“发送”按钮,我不确定您是否要将其删除。您可以尝试使用

更改导航栏中的实际标题

mailController.navigationItem.titleView = myLogo;

哪个应该将导航项的中心区域设置为您的徽标而不是某些文本。

答案 1 :(得分:0)

一些简单的选择:

  • 子类MFMailComposeViewController也是。
  • 不要将CustomUIViewController子类化;覆盖UIViewController(icky)类别中的一些方法。
  • 隐藏UINavigationBar类别中的标题项

答案 2 :(得分:-1)

虽然能够更好地控制外观会很好,但我认为没有一种干净的方法。当你无法改变它时,我认为你应该隐藏它:

[[UINavigationBar appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjects:  [NSArray arrayWithObjects:[UIColor clearColor], nil] forKeys:[NSArray arrayWithObjects:UITextAttributeTextColor, nil]]];