最近はずっとiOSアプリ開発に勤しんでいます。
UINavigationBarを使って、ヘッダー部分(ナビゲーションバー)に画像を設定したい場合。 QiitaのUINavigationBarの背景画像を設定する方法を参考にさせてもらいました。
#import <QuartzCore/QuartzCore.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UIViewController *viewController = [[UIViewController alloc] initWithNibName:nil bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:vc];
// OSのバージョン取得
float osVersion = [[[UIDevice currentDevice] systemVersion] floatValue];
// iOS5未満
if (osVersion < 5.0f) {
UIImageView *imageView = [[UIImageView alloc] initWithImage:[[UIImage imageNamed:@"background.png"] stretchableImageWithLeftCapWidth:0 topCapHeight:1]];
navBg.layer.zPosition = -FLT_MAX;
[navigationController.navigationBar insertSubView:imageView atIndex:0];
// iOS5以上
} else if (osVersion >= 5.0f) {
navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"background.png"] forBarMetrics:UIBarMetricsDefault];
}
}
です。iOS5以上から
- (void)setBackgroundImage:(UIImage *)backgroundImage forBarMetrics:(UIBarMetrics)barMetricsというメソッドが加わったため、iOS5未満の方法で同じように実装しても思ったように表示されません。
以上でぇぇぇえぇぇぇす。
0 件のコメント:
コメントを投稿