0

Google と Stackoverflow の両方でこの問題の回答を数時間探していましたが、これまでのところどの提案もうまくいきませんでした。問題の原因を教えてください。

これがまさに私がやっていることです。

  1. 44x44 の赤い正方形の画像 (test.png) と 88X88 の緑色の正方形の画像 (test@2x.png) を作成します。
  2. 両方の画像を Xcode プロジェクト内の「Resources」という名前のフォルダーにドラッグします
  3. コントローラーの viewWillAppear メソッド内に次のコードを挿入します。

    UIImage *navigationBackground = [[UIImage imageNamed:@"test.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
    [self.navigationController.navigationBar setBackgroundImage:navigationBackground forBarMetrics:UIBarMetricsDefault];
    

シミュレーター (iOS 5.1) でアプリケーションを起動すると、バーの背景が赤くなります。これは、iOS が高解像度の画像ではなく、低解像度の画像を読み込んだことを意味します。

ここで何が間違っていますか?手順がありませんか?plist ファイルを変更する必要がありますか?

ありがとう

4

1 に答える 1

1

シミュレーターはデフォルトで非網膜モードです。ハードウェア/デバイス メニューから iPhone (Retina) を選択してください。

投稿されたコードに明らかに問題があることはわかりません。

于 2012-07-04T06:13:00.680 に答える