Немного поздно, но для тех, кто приходит на этот пост:
По умолчанию Панель навигации в MFMailComposeViewController в будет полупрозрачным и вы не можете изменить. Единственными свойствами, которые вы можете изменить, являются те, которые поддерживаются прокси-сервером. От Apple Документация:
Иерархия представлений этого класса является частной и вы не должны изменять ее . Тем не менее, вы можете настроить внешний вид экземпляра, используя протокол UIAppearance .не
Это оставляет вас с ограниченными возможностями, чтобы изменить панель навигации внешний вид вашего MFMailComposeViewController, поскольку не все свойства поддерживаются (например, если вы пытаетесь что-то вроде [UINavigationBar внешний вид] setTranslucent: NO], это будет крах, потому что это имущество не поддерживается прокси
Вот список свойств поддерживается Appearance прокси:. https://gist.github.com/mattt/5135521
Теперь, чтобы установить Панель навигации в MFMailComposeViewController, чтобы быть не полупрозрачным, вы должны изменить свою BackgroundColor (Это UIView разрешенное свойство, UINavigationBar является подклассом UIVi ЭВ):
[[UINavigationBar appearance] setBackgroundColor:[UIColor whiteColor]];
Убедитесь, что вы делаете это, прежде чем создать экземпляр MFMailComposeViewController, например:
[[UINavigationBar appearance] setBackgroundColor:[UIColor whiteColor]];
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
Вы также можете использовать appearanceWhenContainedIn: MFMailComposeViewController, чтобы повлиять на NavBar только тогда, когда это время принадлежит MFMailComposeViewController, или вы можете по желанию изменить его обратно до того, что было до этого в mailComposeController: didFinishWithResult.
Здравствуйте, вы нашли решение? –
Нет, я этого не делал. Не уверен, что это возможно. –
Вы пытались спрятать его и восстановить? Это похоже на проблему в iOS с модульными контроллерами. Я сдался и начал скрываться и восстанавливаться, увидев и увидев, что они появились. [[UIApplication sharedApplication] setStatusBarHidden: NO withAnimation: UIStatusBarAnimationNone]; – Aardvark