2009-05-18 17 views
0

メインバンドルからローカルxmlファイルを読み込むことができますが、イメージをロードできません。iPhone - ローカルxmlファイルからローカルイメージをロード

NSString * path = [[NSBundle mainBundle] resourcePath];

/ユーザー/ me /ライブラリ/アプリケーションのサポート/ iPhoneシミュレータ/ユーザー/アプリケーション/ 5B888456-40FF-4C72-A2ED-5D5CFA287777/MyApp.app/testがロードされます。 xml

/ユーザー/ me /ライブラリ/アプリケーションサポート/ iPhoneシミュレータ/ユーザー/アプリケーション/ 5B888456-40FF-4C72-A2ED-5D5CFA287777/MyApp.app/backgroundこの画像はロードされません(画像もありません)。 png

+1

画像が読み込まれないと言ったらどういう意味ですか?どのようにロードしようとしていますか? – Ryan

+0

-1。十分なコードではなく、実際の動作(たとえばアサーションあり)を示すコードはありません... –

答えて

3

[UIImage imageNamed:@"background.png"]を使用できます。

これは、background.pngをロードします(XcodeのResourcesフォルダにあります)。

+0

イメージをロードする別のメソッドに送る文字列を作成しようとしています。文字列を受け取り、次に使用します。 NSURL * url = [NSURL URLWithString:imgPath]; NSURLConnectionを作成してイメージを取得します。私はその音が畳み込まれていることを知っていますが、ロードしようとしている画像はmainBundleにあるかもしれません。イメージがリモートサーバー上にある場合は、正しいURLを送信して正常にロードしますが、メインバンドルからロードすることはできません。イメージがmainBundleにある場合、どの文字列をメソッドに渡しますか? –

+0

まずimageNamedをチェックして、失敗した場合はURLを作成してください。 –

1

ここには2つの可能性があります。

1)画像ファイル名が正しくありません。つまり、ファイル名では大文字と小文字が区別されます。だから、資本小文字の問題かもしれない。

2)画像プロパティのターゲット名をオフにした可能性があります。つまり、あなたの画像はあなたが編集しているプロジェクトのターゲットのメンバーではありません。これを確認するには、「ファイル情報」ダイアログから「情報を取得」 - >「ターゲットを選択」タブ - >ターゲット名の近くにあるチェックボックスの状態を確認します。場合は、それが選択/チェックされ、奇妙な問題があります。しかし、選択されていない/選択されていない場合は、画像がコンパイル後に作成されたバンドルファイルに追加されていないことを意味します。

ここで3番目の可能性は、あなたが参照している画像を追加していない可能性があります。あなたのプロジェクト階層&を再確認して、すべてのリソースがあるかどうかを確認してください。私は離れて今コンパイラからだ

1

何か

UIImage *testimg = [UIImage imageNamed:myfilename]; 

if (nil==testimg) [testimg initWithContentsOfURL:myurl]; 

ようなので、私はあなたがそれイメージ行う前に、NSDataオブジェクトにそれをダウンロードする必要があるかもしれないかどうかを確認することはできません。また、initWithContents ...をtry ... catch ... finallyブロックに配置する必要があります。

0

こんにちは 次のコードを使用

[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@ "背景" ofType: "PNG" @]];

3

あなたはパスのNSURLを構成していると言っています。バンドル内のファイルなどのローカルファイルシステムパスに対してこれを行うには、NSURL fileURLWithPath:を使用する必要があります。

+0

しかし、問題はローカルイメージの読み込みに関するものです。したがって、NSURLを使用する必要はありませんし、UIImageメソッドでそれを与える。 – Sagar

0

NSURL * imageURL = [NSURL URLWithString:@ "bundle://background.png"];

関連する問題