6
以下のコードは、iOS 5では正常に動作しますが、iOS 6以降では動作しません。 電子メールコンポーザシートでは、navigationBarイメージは他のUINavigationBarクラスとは異なるものにしたいと思います。私は、デバッグポインタが外観メソッドに応答していることを理解できませんが、デバイス上では "bgNavigationBar.png"という名前のnavigationBarイメージを表示します。予想されるのは "bgNavigationBar_2.png"です。IOS 6のサポート - 予期しない結果
私を導いてください.......
if ([[UINavigationBar class]respondsToSelector:@selector(appearance)]) {
UIImage *logoImage44 = [[UIImage imageNamed:@"bgNavigationBar.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
[[UINavigationBar appearance] setBackgroundImage:logoImage44 forBarMetrics:UIBarMetricsDefault];
UIImage *ImagePlain = [[UIImage imageNamed:@"bgNavigationBar_2.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
[[UINavigationBar appearanceWhenContainedIn:[MFMailComposeViewController class], nil] setBackgroundImage:ImagePlain forBarMetrics:UIBarMetricsDefault];
}
iOS 6バグ。オープンレーダー - http://www.openradar.me/radar?id=2984402 – Daniel