でナビゲーションバーが完全に透明にすることができません。私はiOS5を中に私のナビゲーションバーを透明にするには、次のコードを使用していた:iOS6とナビゲーションバーにアップグレードiOS6
const float colorMask[6] = {222, 255, 222, 255, 222, 255};
UIImage *img = [[UIImage alloc] init];
UIImage *maskedImage = [UIImage imageWithCGImage: CGImageCreateWithMaskingColors(img.CGImage, colorMask)];
[self.navigationController.navigationBar setBackgroundImage:maskedImage forBarMetrics:UIBarMetricsDefault];
はまだ透明であるが、今細い黒を持っていますその下の線。ナビゲーションバーを完全に透明にするにはどうすればよいですか?
私はまた、次のすべてを試してみました:事前に
self.navigationController.navigationBar.translucent = YES;
self.navigationController.navigationBar.opaque = YES;
self.navigationController.navigationBar.tintColor = [UIColor clearColor];
self.navigationController.navigationBar.backgroundColor = [UIColor clearColor];
[self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
[self.navigationController.navigationBar setBarStyle:UIBarStyleBlackTranslucent];
[[UINavigationBar appearance] setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
感謝を。
それはあなたのイメージのマスクが完全にこれはあなたのUINavigationBarはかなりビューと面一に付属していません黒「スペース」を残して、バーの高さを取っていないことは可能ですか? – CodaFi
解決済み。 iOS6はナビゲーションバーにドロップシャドウを追加しました。したがって、iOS5で使用していたマスキングコードは正常に動作します。if([self.navigationController.navigationBar respondsToSelector:@selector(shadowImage)]){ [self.navigationController.navigationBar setShadowImage:[[UIImage alloc ] その中に]]; }を使用してドロップシャドウを削除します。 –