2014/04/13

[iOS][Objective-C]UIBarButtonItemに画像を設定する際に気をつけること

iOS7からどうやらUIBarButtonItemに画像を設定する時に、挙動が変わってしまったようだ。

デフォルトでは、iOS7から登場した下のメソッドにUIImageRenderingModeAutomaticが設定されているようです。

- (UIImage *)imageWithRenderingMode:(UIImageRenderingMode)renderingMode
で、これを画像そのものにするには、
UIImage *image;
[image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
とするしかないようです。

で、iOS7よりも小さいバージョンを考慮したプログラムは下のようになります。
UIImage *image;
CGFloat osVersion = [[UIDevice currentDevice].systemVersion floatValue];
if(osVersion >= 7){
    [image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
}
これをベースに、組んでいけばいいのかなと。

0 コメント:

コメントを投稿