在IOS5中,我尚不知道如何自定义UINavigationBar。

我的代码是这样的:

    [[UINavigationBar appearance] setBackgroundColor:[UIColor colorWithWhite:0.5f alpha:1.0]];

    [[UINavigationBar appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIColor blackColor],UITextAttributeTextColor
,[UIColor blackColor], UITextAttributeTextShadowColor
,[NSValue valueWithUIOffset:UIOffsetMake(0, 0)], UITextAttributeTextShadowOffset
,[UIFont fontWithName:@"Arial" size:20.0],UITextAttributeFont
, nil]];


    // Customize UIBarButtonItems
 UIImage *gradientImage44 = [[UIImage imageNamed: @"title__bg.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];

[[UINavigationBar appearance] setBackgroundImage:gradientImage44 forBarMetrics:UIBarMetricsDefault];

    [[UIBarButtonItem appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor whiteColor],UITextAttributeTextColor
,[UIColor whiteColor], UITextAttributeTextShadowColor
,[NSValue valueWithUIOffset:UIOffsetMake(0, 0)], UITextAttributeTextShadowOffset
,[UIFont fontWithName:@"Arial" size:14.0],UITextAttributeFont
, nil] forState:UIControlStateNormal];

    // Customize back button items differently
    UIImage *buttonBack30 = [[UIImage imageNamed:@"bn_back"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 13, 0, 5)];

    [[UIBarButtonItem appearance] setBackButtonBackgroundImage:buttonBack30 forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];


此图片是PopoverView中使用的UINavigationViewController。


此图片是Modal打开的UINavigationViewController。


如您所见,我设置了背景图像,但是NavigationBar的边框是不同的。

这是关于PopoverView的问题吗?

我不知道我错过了什么。

请告诉我您的建议。谢谢!!!新年快乐!!!

最佳答案

转到AppDelegate.m并将代码粘贴到

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions


将状态栏设置为黑色。

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque
                                            animated:NO];


将@“ menubar.png”更改为图像的文件名。

 UIImage *navBar = [UIImage imageNamed:@"menubar.png"];

[[UINavigationBar appearance] setBackgroundImage:navBar
                                   forBarMetrics:UIBarMetricsDefault];

关于ios - 如何在IOS5中自定义UINavigationBar,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8736171/

10-13 04:41