以下代码在iOS 5/6中运行良好.在iOS 7中,它看起来像这样(红色椭圆形用于强调).

码:
if ([MFMessageComposeViewController canSendText]) {
self.messageComposer = [MFMessageComposeViewController new];
self.messageComposer.recipients = @[number];
self.messageComposer.messageComposeDelegate = self;
[self presentViewController:self.messageComposer
animated:YES
completion:nil];
}
Run Code Online (Sandbox Code Playgroud)
问题:这是简单的代码.是否有一些其他外部属性,可能是呈现视图控制器,正在影响这个?任何人都有修复或解决方法?
谢谢.
我有一个外观代理,将barTintColor属性设置为绿色UINavigationBar
[[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:54./255 green:165./255 blue:53./255 alpha:1]];
根据需要,我使用覆盖它 appearanceWhenContainedIn:
[[UINavigationBar appearanceWhenContainedIn:[INFSearchViewController class], nil] setBarTintColor:[UIColor colorWithWhite:0.80 alpha:1]];
这很好用.
但是,当我提出MFMessageComposeViewController它遵守UINavigationBar代理时,看起来如下所示.

这显然看起来很糟糕,我宁愿MFMessageComposeViewController不坚持代理,但试图做
[[UINavigationBar appearanceWhenContainedIn:[MFMessageComposeViewController class], nil] setBarTintColor:[UIColor whiteColor]];
没有影响.
我应该采取什么行动?
ios7 ×2
ios ×1
mfmailcomposeviewcontroller ×1
mfmessagecomposeviewcontroller ×1
uiappearance ×1