3

UINavigationBars にカスタム イメージを含む戻るボタンがあるアプリがあります。iOS 6 ではすべて問題ありませんが、iOS 7 ではほとんどの場合、ボタンは「見えません」。

新しいView Controllerを UINavigationController にプッシュすると、新しい画面に戻るボタンが表示されませんが、ボタンがあるはずの場所に触れるとフェードインします。

アニメーションなしでナビゲーション コントローラーに 2 つのビュー コントローラーを設定すると、ボタンは正常に表示されますが、その後のプッシュでは表示されません。

私のコードには、戻るボタンを意図的に隠しているものは何もなく、UINavigationBar で利用可能なさまざまな色を変更しても違いはないと確信しています。

4

1 に答える 1

5

これはおそらく、iOS 7 で導入された 2 つの新しい UINavigationBar プロパティを実装する必要があるためです。

self.navigationController.navigationBar.backIndicatorImage = [UIImage customImage]; self.navigationController.navigationBar.backIndicatorTransitionMaskImage = [UIImage customImage];

iOS 7移行ガイドラインから:

「カスタム イメージを使用してデフォルトのシェブロンを置き換える場合は、カスタム マスク イメージも作成する必要があります。iOS 7 では、マスクを使用して、ナビゲーションの遷移中に前の画面のタイトルがシェブロンから出てきたり、シェブロンに消えたりするように見せます。 [戻る] ボタンとマスク イメージを制御するプロパティについては、「UINavigationBar クラス リファレンス」を参照してください。

于 2013-11-06T16:41:51.323 に答える