代码之家  ›  专栏  ›  技术社区  ›  Thomas Clayson

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

  •  1
  • Thomas Clayson  · 技术社区  · 14 年前

    当我试图推我的mfmailcomposiewcontroller时,它说我不能推导航控制器?!嗯。。。不知道。

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

    展示我的mfmailcomposiewcontroller时,会将标题放回原处,因为我无法使其成为CustomUIViewController的子类(或者我可以吗?我不知道?).

    所以我真的需要一种方法从mfmailcomposiewcontroller中删除title视图。

    谢谢

    汤姆

    3 回复  |  直到 14 年前
        1
  •  0
  •   tc.    14 年前

    几个简单的选择:

    • 子类mfmailcomposiewcontroller也是。
    • 不要子类化CustomUIViewController;重写UIViewController(icky)类别中的某些方法。
    • 隐藏UINavigationBar类别中的标题项
        2
  •  0
  •   kevboh    14 年前

    考虑到title视图包含Cancel和Send按钮,我不确定您是否要删除它。您可以尝试使用更改导航栏中的实际标题

    mailController.navigationItem.titleView = myLogo;

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

        3
  •  -1
  •   Brian Vitaliy Nesterenko    11 年前

    虽然对外观有更多的控制会很好,但我认为没有一个干净的方法。当你不能改变它的时候,我想你应该把它藏起来:

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