Can I set image as a title to UINavigationBar?

后端 未结 16 1929
有刺的猬
有刺的猬 2020-12-07 09:38

Is it possible to set some image as title of Navigation bar?

I think NYTimes application used a Navigation bar and title is look like image file (the reason why it\'

16条回答
  •  天涯浪人
    2020-12-07 10:30

    ios5.0 introduced a heap of features to customise the appearance of standard elements. If you didn't want to use an ImageView for the title, an alternative would be to customise the appearance of all UINavbars using a background image and a custom font/colour.

    - (void) customiseMyNav
    {
        // Create resizable images
        UIImage *portraitImage = [[UIImage imageNamed:@"nav_bar_bg_portrait"] 
            resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
        UIImage *landscapeImage = [[UIImage imageNamed:@"nav_bar_bg_landscape"] 
            resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
    
        // Set the background image
        [[UINavigationBar appearance]  setBackgroundImage:portraitImage forBarMetrics:UIBarMetricsDefault];
        [[UINavigationBar appearance]  setBackgroundImage:landscapeImage forBarMetrics:UIBarMetricsLandscapePhone];
    
        // set the title appearance
        [[UINavigationBar appearance] setTitleTextAttributes:
            [NSDictionary dictionaryWithObjectsAndKeys:
                [UIColor colorWithRed:50.0/255.0 green:150.0/255.0 blue:100/255.0 alpha:1.0], 
                UITextAttributeTextColor, 
                [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.6], 
                UITextAttributeTextShadowColor, 
                [NSValue valueWithUIOffset:UIOffsetMake(0, -1)], 
                UITextAttributeTextShadowOffset, 
                [UIFont fontWithName:@"Arial-Bold" size:0.0], 
                UITextAttributeFont, 
                nil]];
    }
    

提交回复
热议问题