2013-11-22 183 views
-1

想要弄清楚为什么我无法更改此控制器的背景颜色,它会改变文本而不是背景......我错过了什么?在MFMailComposeViewController中更改导航栏颜色

if ([MFMailComposeViewController canSendMail]) 
{ 
    MFMailComposeViewController *mailer = [[MFMailComposeViewController alloc] init]; 
    // set nav bar color 
    UIColor *titleColor = [UIColor colorWithRed: 20.0/255.0 green: 33.0/255.0 blue:61.0/255.0 alpha: 1.0]; 
    [mailer.navigationBar setTintColor:titleColor]; 

回答

0

在应用程序委托的-(void)applicationDidFinishLaunching,你应该包括行:

[[UINavigationBar appearance] setTintColor:[UIColor colorWithRed: 20.0/255.0 green: 33.0/255.0 blue:61.0/255.0 alpha: 1.0]]; 

然后,所有的导航栏在整个应用程序将有色调的颜色。该UIAppearance类是真正的强大,适用于大多数自定义的UI元素

注意:这仅仅是与iOS 5+兼容

+0

谢谢..我确实看到了,但我根据用户在应用程序中的位置使用了两种不同的颜色...我使用蓝色表示普通视图,红色表示设置视图...所以我试图更改这个单一的视图红色匹配其他人。 – Mark

1

setTintColor:是在iOS6的和较低的设置栏颜色的方法。在iOS7 +上,使用setBarTintColor:

相关问题