2

私のアプリの青色のナビゲーション バーは、iOS 7 で突然黒/灰色に変わりました。私のアプリはまだ iOS 7 にアップグレードされておらず、Xcode 5 を使用して再コンパイルされていません。古いコンパイル済みの互換モードで、iOS 7 でもまったく同じように見えると期待していました。 iOS 6 ですが、私は間違っていたと思いますか?

これはバグですか、それとも意図した動作ですか?

参考までに、私はUINavigationController. UIViewInterface Builder から直接ドラッグした navbar をペン先に挿入するだけです。

4

2 に答える 2

4

あなたが望むのはこれだと思います:

UIColor *tintColor = [UIColor redColor];  
if ([navigationBar respondsToSelector:@selector(setBarTintColor:)])
{
    navigationBar.barTintColor = tintColor;
}
else
{
    navigationBar.tintColor = tintColor;
    navigationBar.translucent = NO;
}

iOS7 では、UINavigationBar の tintColor プロパティが変更され、ボタン (leftBarButtonItem/rightBarButtonItem) に色を付けて、ユーザーがタップ可能であることを宣言しました。バー全体を「着色」する新しい方法は、barTintColor (iOS7 以降で使用可能) を使用することです。

もう 1 つの違いがあります。

iOS7 より前の UINavigationBar の半透明プロパティはNOデフォルトでしたが、現在は ですYES

これがお役に立てば幸いです。:)

ベスト、サーシャ

于 2013-09-19T21:56:09.317 に答える
-1

iOS 7 では、ナビゲーション バーのデフォルトの色は白です。青は iOS 6 のデフォルトの navcolor であるため、その OS バージョンのデフォルトに設定されているだけかもしれません。これは、ナビゲーション バーがデフォルトの iOS 6 青であると仮定しています。

于 2013-09-19T21:46:09.210 に答える