iPhoneOS2.2とそれ以前のバージョンの違い3
4月 3rd, 2009
kuniです。
UIBarItemのプロパティ「enable」がありますが、
これをinterface builderからNOにしておくと、
OS2.1以降では勝手に半透明になってくれますが、
OS2.0では半透明になりません。(意外にもOS2.1でも半透明になりました。)
なのであらかじめ透明度を設定したpngを用意しておき、
UIBarItemのimageを入れ替える方法で回避しようかと思いきや、
なぜか下記のように、もう一度同じイメージをスクリプトで設定し直すと、
効くようになりました。
NSString* model = [[UIDevice currentDevice]systemVersion];
NSComparisonResult result_os = [model compare:@"2.0"];
if(result_os == NSOrderedSame){
//このバージョンの場合、ボタンが透明にならない。だが一度置き換えるとなぜか効くようになる。//
NSString *imgPath = [NSString stringWithFormat:@"%@/%@", [[NSBundle mainBundle] resourcePath] , @”btn_setting.png”];
UIImage *settingBtnImage = [UIImage imageWithContentsOfFile: imgPath];
settingBtn.image = settingBtnImage;
}
interface builderのバグか・・
