2012-06-12 1 views
0

사용자 지정 탐색 모음으로 프로젝트를 구현하려고했습니다. 그러나 다음 코드는사용자 지정 탐색 모음 iOS 5 호환성

@implementation UINavigationBar (CustomImage) 

// Set the navigation bar background 
- (void)drawRect:(CGRect)rect { 
    UIImage *image = [UIImage imageNamed:@"TopBar.png"]; 
    [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height + 1)]; 
} 
@end 

은 iOS 5에서 작동하지 않습니다. Xcode 4.2를 사용하고 있습니다.

질문 : 이전 버전 (< iOS 5)의 위 코드를 손상시키지 않으면 서 사용자 지정 탐색 모음을 구현하려면 어떻게해야합니까?

도움을 주시면 감사하겠습니다. :)

답변

3

나는 마침내 그것을 얻었다 ... 이것은 이것을 구현하는 다른 사람들을 도울 수있다.

@implementation UINavigationBar (CustomImage) 

// Set the navigation bar background 
- (UIImage *)barBackground{ 
    UIImage *image = [UIImage imageNamed:@"TopBar.png"]; 
    [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height + 1)]; 
    return image; 
} 

- (void)didMoveToSuperview{ 
    // Applies to iOS 5 
    if ([self respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]) 
    { 
     [self setBackgroundImage:[self barBackground] forBarMetrics:UIBarMetricsDefault]; 
    } 
} 

// This doesn't work on iOS5 but is needed for iOS4 and earlier 
- (void)drawRect:(CGRect)rect 
{ 
    // Draw the image 
    [[self barBackground] drawInRect:rect]; 
} 
@end