私が開発しているアプリにはカスタムバーがありますが、iOS 4.2-iOS 5をサポートしていますので、私のアプリケーションデリゲートでこの古い学校の方法でUINavigationBarの背景と色合いを設定する必要があります。iOS 4でUINavigationBar tintの色が点滅する
@implementation UINavigationBar (UINavigationBarCategory)
- (void)drawRect:(CGRect)rect {
self.tintColor = [UIColor colorWithRed:42.0/255.0
green:164.0/255.0
blue:182.0/255.0
alpha:1.0];
UIImage *img = [UIImage imageNamed:@"navbar_bg.png"];
[img drawInRect:CGRectMake(0.0, 0.0,
self.frame.size.width,
self.frame.size.height)];
}
@end
これは、ほとんどの部分は動作しますが、私はアプリが最初に開始されたときに、UIBarButtonItemsは、彼らが自分自身を修正する前に、第2のデフォルトのナビゲーションバーの色が点滅し、ナビゲーションバーに合わせて、色を変更するに気づきました。興味深いことに、ナビゲーションバー自体は、get-goから正しく背景画像を使用します。フラッシュは、誰もがこれを実現および/またはどのようになぜ上の任意の洞察力を持っている唯一のiOS 4
であるので、私は期待どおりに動作のiOS 5デバイスにUINavigationBarためsetBackgroundImageを使用してい
明確にし、修理する?あなたがのviewDidLoadで参照コードを持つクラスを呼び出す場合
アプリケーションのライフサイクルのどの時点で、コードを参照してクラスを呼び出すのですか?それはviewDidLoadですか? – valexa