Стиль варьируется от iOS SDK 4.3 до 5.0 - PullRequest
1 голос
/ 28 ноября 2011

Я использую встроенный Mail-composer в моем приложении.В зависимости от того, какой iOS SDK я использую для компиляции приложения, я получаю разные результаты:

ХОРОШО : iOS SDK 4.3 хорошо http://k.minus.com/jbmHVxSGOpPnhE.png


ПЛОХО : iOS SDK 5.0 плохо http://k.minus.com/jwkNg6irPuMKU.png

Итак, как лучше всего добиться того же внешнего вида с помощью SDK iOS 5.0?

Большое спасибо за помощь

1 Ответ

0 голосов
/ 30 ноября 2011

Я мог бы решить мою проблему следующим образом.Тем не менее, я не уверен, что это самое чистое решение, поэтому, пожалуйста, дайте мне знать, если есть более стандартный или чистый способ сделать это:

Так как мне нужно поддерживать iOS> 4.0, мне нужны следующие дваподходит.

Для iOS <5.0 (с использованием категории) </p>

@implementation UINavigationBar (UINavigationBarCategory)

- (void)drawRect:(CGRect)rect {

    if ([[[UIDevice currentDevice] systemVersion] doubleValue] < 5.0) {
        UIColor *color = kColorSCSNavigationBarBackgroundBlue;
        UIImage *img  = [UIImage imageNamed: @"TitleBar.png"];
        [img drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
        self.tintColor = color;
    }
}

@end

Для iOS> = 5.0 (applicationDidFinishLaunching метод в AppDelegate)

if ([[[UIDevice currentDevice] systemVersion] doubleValue] >= 5.0) {
    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"TitleBar.png"] forBarMetrics:UIBarMetricsDefault];
    [[UINavigationBar appearance] setTintColor:kColorSCSNavigationBarBackgroundBlue];        
}
...