2009-07-07 19 views
1

私はiPhoneを使ってアプリケーションを作成しています - このアプリケーションでは、ただ一つのフォルダに保存された異なるプレーヤーの画像を表示しています。しかし、私はそれをプレイヤーのイメージを表示していないiphoneに展開します。そのためiPhoneのシミュレータはアプリの画像を表示しますが、iPhoneは表示されません

コードは次のとおりです。

UIImageView *imageplayer = [[UIImageView alloc]initWithFrame: CGRectMake(imgx, imgy+45,135,150)]; 
imageplayer.image = [UIImage imageNamed:playerpng]; 

if(imageplayer.image == nil) 
    [imageplayer setImage:[UIImage imageNamed:playerjpg]]; 

if(imageplayer.image == nil) 
    [imageplayer setImage:[UIImage imageNamed:@"noimage.png"]]; 

[self.view addSubView:imageplayer]; 

Plzは、このクエリを解決します。 ありがとうございます。

+0

playerpngは何ですか行く準備されたターゲット? – CiNN

+0

イメージをリソースフォルダにコピーするか、リンクするだけでしたか? – hanno

+0

iPadデバイスに表示されていない同様の問題がありました。[UIImageがシミュレータで表示されますが、デバイス(iPad/iPhone)では表示されません](http://jackofalltradesdeveloper.blogspot.com/2012/07/uiimage -showing-in-simulator-but-not-on.html) – Khattab

答えて

1

イメージファイルの名前を確認してください。 「noimage.png」である必要があります Noimage.pngまたはnoimage.PNG

+0

同じものはありません。そうであれば、シミュレータにも表示されません。ではない?? –

+0

@jaynaiPhone:Mac OS Xのデフォルトのファイルシステム構成では、大文字と小文字は区別されません。 – dreamlax

0

これは時々私に起こります。私は一度、何が間違っていたかを理解しようと半夜過ごしました。この目的のために、これはうまくいきました:イメージエディタでイメージを開いて、もう一度保存します。それで全部です。私はこのためにfree Acorn image editorを使用しています。 Photoshopで試してみませんか? (結局のところ、Photoshopは最初からエラーを紹介する責任があると思われるが、それは確かではない。)

何が問題なのか分からない。私は通常、私に送られたpngファイルを使用してそれを取得します。単純なファイルのアクセス許可の問題、またはイメージフォーマットのさらに微妙な問題である可能性があります。私は、より情報に富んだ人々の意見を聞くことに非常に興味があります。

いずれにしても、それ以外の場合は、これを試してみてください:Acornで画像を開き、元のファイルを保存してください。私のために働く。

6

時にはxCodeがバンドルを正しく更新しているため、クリーニングとビルドを再試行してください。

+0

Juanに感謝します。私は朝、問題の内容を解決するために過ごしました。最後にきれいにそれを修正しました。 – Liam

+0

これが答えだったら、どうして答えとしてマークされたことはありませんでしたか? – James

1

明確にするために、「noimage.png」の表示、またはプレーヤーの画像を読み込むプログラムが表示されていませんか?または何もロードされていません。

これらは、デバッグモードで簡単に決定する必要があります。

チェックするために、いくつかの追加の事...

1)だけでテストのため、プレーヤーのファイルのPNGバージョンから始めます。これはiPhoneの主要なフォーマットであり、シミュレータが敏感でないファイル形式の問題やその他の異常を排除する可能性があります。

2)イメージエディタでの固定に関しては、イメージが72ピクセル/インチのDPIに設定されていることを確認してください。 iPhoneや特にInterface Builderは、これが正しく行われていることに非常に敏感で、正しく表示されない場合や、非常にぼやけた画像が表示されることがあります。

3)イメージが複数のディレクトリや異なるグループフォルダに複数回追加されていないことを確認してください。プロジェクトの階層内の2つの異なるレイヤーで同じ画像を誤ってインポートしたため、iPhoneで予期しない動作が発生する可能性があります(ランダムに選択するか選択しないか)。

4)情報を見る - >ターゲットにあなたの特定のターゲットがチェックされていることを確認してください。シミュレータにはまだ画像が表示される可能性がありますが、iPhoneには展開されません。

5)画像がXCode内で表示できること、および正しいかどうかを確認してください。

バーニー

2

私は現在この問題も抱えています。私は少しのデバッグとビルドファイルのレビューの後で修正することができました。

ls -lを実行したとき、私のpngファイルのいくつかにアクセス許可の横に@記号があることがわかりました。 ls -l @でそれをフォローしたところ、 '@'が付いたファイルには属性セット 'com.apple.quarantine'があることが示されました。この属性は、ネットからダウンロードされたファイル(多くの場合、zip、jar、またはその他の実行可能ファイル)に与えられます。

xattr -d com.apple.quarantine *.png 

次に、XCodeで画像を選択し、ターゲットの下のチェックボックスがオンになっていることを確認します。私の場合、そうではなかったので、イメージはバンドルに含まれていませんでした。

2

私は同じ問題を抱えていましたが、code - image.jpgのファイル名にはすべて小文字を使用して解決しましたが、実際のファイル名がどのような場合でも違いはないようです。 Image.jpg

0

XCodeプロジェクトに画像ファイルが追加されていることを確認してください。

0

若干の調査の後、マイケルのコメントは私のためにそれを解決したようだ。私はすべて小文字をファイル名として持っていましたが、可変規約に従い、ファイル名の第2部分の大文字のpngファイルを持っていました。ここに私のファイルは、をputback.pngましたが、あなたのプロジェクトにイメージファイルを追加するときに正しいターゲットを選択しputBack.png

UIImage *putBackImage = [UIImage imageNamed:@"putBack.png"]; //wrong 
UIImage *putBackImage = [UIImage imageNamed:@"putback.png"]; //correct 
0

として私のコードで参照されました。以下は、利用可能なすべてのターゲット

  • チェック対象または複数を示し下部にある「ターゲットに追加」オプションがあります開くウィンドウでの「YourProjectName」
  • ファイルを追加

    1. 選択にそれをさらに明確にする手順は次のとおりですあなたがボタンを
    2. を押して画像を追加し、「追加」したいとあなたが
  • 関連する問題