Изменение фонового изображения UINavigationBar

Я пытался изменить фоновое изображение UINavigationBar моего приложения. Я пробовал несколько способов. Сначала я добавил в свой класс AppDelegate следующий код:

@implementation UINavigationBar (CustomImage)
    - (void)drawRect:(CGRect)rect {
    UIImage *image = [UIImage imageNamed: @"navigationbar.png"];
    [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end

Но это не сработало. Моей следующей попыткой было написать класс CustomizedNavigationBar, который переопределяетDrawRect метод. Это выглядело так:

CustomizedNavigationBar.h

#import <UIKit/UIKit.h>

@interface CustomizedNavigationBar : UINavigationBar

@end

CustomizedNavigationBar.m

#import "CustomizedNavigationBar.h"

@implementation CustomizedNavigationBar

- (void) drawRect:(CGRect)rect {
    UIImage *image = [UIImage imageNamed: @"navigationbar.png"];
    [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];

    NSLog(@"I got called!!!!!");
}

@end

В моем файле .xib, где определен NavigationBar, я изменил класс на новый CustomizedNavigationBar. Но все равно это не работает ..

В качестве другого теста я скачал пример проекта, где фоновое изображение должно быть изменено. Но даже с этим примером кода он не работал.

Что я делаю неправильно? Я использую IOS 5. Какие-либо предложения или другие способы определения фонового изображения?

Спасибо за ваши ответы!

Ответы на вопрос(7)

Ваш ответ на вопрос