2012-08-31 174 views
1

看來我無法更改導航欄上的標題,該標題被設置爲電子郵件的主題(本例中爲「我的主題」)。在這種情況下,我想擺脫標題,使用空字符串作爲標題或使標題不可見。在MFMailComposeViewController中更改導航欄標題

MFMailComposeViewController *mfViewController = [[MFMailComposeViewController alloc] init]; 
mfViewController.mailComposeDelegate = self;  
[mfViewController setSubject:[NSString stringWithFormat:@"My Subject"]]; 
[mfViewController setMessageBody:[self emailBody] isHTML:NO]; 
[mfViewController setTitle:@""]; 

回答

1

其中u已經提出ModalViewController

[self presentModalViewController:controller animated:YES]; // Existing line 

添加

[[[[controller viewControllers] lastObject] navigationItem] setTitle:@"Set the title"]; 

我相信這是某種形式的保護與iOS4的來了。

這裏明確指出,你不能改變Apple提供的接口。

http://developer.apple.com/library/ios/#documentation/MessageUI/Reference/MFMailComposeViewController_class/Reference/Reference.html

重要提示:郵件撰寫界面本身不是定製的,不得通過您的應用程序進行修改。另外,在呈現界面之後,您的應用程序不允許對電子郵件內容進行進一步更改。用戶仍然可以使用界面編輯內容,但程序化更改將被忽略。因此,您必須在呈現界面之前設置內容字段的值。

我搜索了論壇,有些人已經拒絕了他們的應用程序,所以我想你應該避免這樣做。

希望它有幫助。快樂編碼:)

+0

它工作了半秒,然後該死的控制器添加標題。 – Fr4ncis

+0

在我的回答中添加了原因。 –