0

NSFileManager を使用して「index.png」ファイルを検索しています。ファイルが存在しない場合、デフォルトの画像を表示しようとしています。以下のコードを使用していますが、機能していません。ここで何か間違ったことをしていますか?

NSString *path;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString path1 = [[paths objectAtIndex:0] stringByAppendingPathComponent:literature.localURL.path];
path = [path1 stringByAppendingPathComponent:@"index.PNG"];

    if ([[NSFileManager defaultManager] fileExistsAtPath:path]){
        cell.preview = [UIImage imageWithContentsOfFile:path1];
    }
    else {
        cell.preview = [UIImage imageNamed:@"Default-HTML5.PNG"];
    }
}
4

3 に答える 3

1

パスを2つの異なるものに等しく設定しています。たとえば、そのうちの 1 つに別の文字列を使用します。

NSString *path1 = [[paths objectAtIndex:0] stringByAppendingPathComponent:literature.localURL.path];

もう一方は同じに保ちます

そして「index.PNG」「index.png」を作ります。iOS では大文字と小文字が区別されます。

于 2013-01-31T03:00:13.187 に答える
1
cell.preview = [UIImage imageWithContentsOfFile: path];

Apple ドキュメントの引用 :

imageNamed:
Returns the image object associated with the specified filename.

+ (UIImage *)imageNamed:(NSString *)name
Parameters
name
The name of the file. If this is the first time the image is being loaded, the method looks for an image with the specified name in the application’s main bundle.

あなたのpngはメインバンドルではなく、あなたのフォルダーにあります

imageWithContentsOfFile:
Creates and returns an image object by loading the image data from the file at the specified path.
于 2013-01-31T03:00:36.433 に答える
0
imageNamed: 

画像用

このメソッドは、アプリケーションのメイン バンドルで指定された名前のイメージを探します。

、ドキュメントのディレクトリには、使用する必要があります

[UIImage imageWithContentsOfFile: path];

Guo Luchuan言ったように

于 2013-01-31T03:13:37.763 に答える