0

リソース (青いフォルダー) をリソース バンドルに追加しましたが、NSFileManger を使用してファイルが存在するかどうかを判断し、チェックで使用されたフル パスを出力するかどうかを確認するところまで、すべて問題ないようです。 :

NSString *p = [NSString stringWithFormat:@"%@/words/001", 
   [[NSBundle mainBundle] resourcePath]];

NSFileManager *fm = [NSFileManager defaultManager];

NSString *a = [p stringByAppendingPathComponent:@"001-1.png"];

UIImage *i;

if ([fm fileExistsAtPath:a]) {

  NSLog(@"file found ... %@", a);

  i = [UIImage imageWithContentsOfFile:a];
}
else {

  NSLog(@"doh!");
} 

[iv setImage:i];

ファイルの存在チェックからこの出力を取得します

/Users/phh/Library/Application Support/iPhone Simulator/4.2/Applications/3DAB4772-7251-4E39-8EA8-4AFE32DFB61A/MyApp.app/words/001/001-1.png

しかし、UIImage は常に nil ですか? 私はここで何が起こっているのか見ることができません....

ヘルプ....?

ありがとう

4

2 に答える 2

1

画像をiに渡しながらこれを試してください

 i = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"001-1.png" ofType:@"png" inDirectory:@"word/001"];

ハッピーコーディング...

于 2010-12-08T08:58:36.777 に答える
1

の戻り値imageWithContentsOfFile:

指定されたファイルの新しいイメージ オブジェクト、またはメソッドが指定されたファイルからイメージを初期化できなかった場合は nil。

その場所にあるファイルが有効なイメージ ファイルであると確信していますか?

于 2010-12-08T08:43:10.920 に答える