2012-03-15 11 views
1

私はカメラショットからドキュメントディレクトリに保存しているjpgイメージをいくつか持っています。私はドキュメントディレクトリ内のすべてのjpgイメージを見つけてオーバーフロービューになるように配列にロードします。イメージをドキュメントディレクトリから配列にロード

ドキュメントディレクトリ内のjpgイメージを検索して並べ替えるためのコードです。

NSString *extension = @"jpg"; 
     NSFileManager *fileManager = [NSFileManager defaultManager]; 



     NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
     NSString *documentsDirectory = [paths objectAtIndex:0]; 

     NSArray *contents = [fileManager contentsOfDirectoryAtPath:documentsDirectory error:nil]; 
     NSMutableArray *jpegFiles = [NSMutableArray arrayWithCapacity: [contents count]]; 

     NSString *filename; 
     for (filename in contents) 

     { 
      if ([[filename pathExtension] isEqualToString:extension]) 
        { 
      [jpegFiles addObject:[UIImage imageNamed:[documentsDirectory stringByAppendingPathComponent:filename]]]; 


      } 
     } 

    // Add the coverflow view 
    coverflow = [[TKCoverflowView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)]; 
    coverflow.coverflowDelegate = self; 
    coverflow.dataSource = self; 
    [self.view addSubview:coverflow]; 
    [coverflow setNumberOfCovers:6]; 

- (void) coverflowView:(TKCoverflowView*)coverflowView coverAtIndexWasBroughtToFront:(int)index{ 
     NSLog(@"Front %d",index); 
} 

- (TKCoverflowCoverView*) coverflowView:(TKCoverflowView*)coverflowView coverAtIndex:(int)index{ 


    TKCoverflowCoverView *cover = [coverflowView dequeueReusableCoverView]; 

    if(cover == nil){ 
     // Change the covers size here 
     cover = [[TKCoverflowCoverView alloc] initWithFrame:CGRectMake(0, 0, 280, 210)]; // 224 
     cover.baseline = 200; 

    } 
    cover.image = [covers objectAtIndex:index % [covers count]]; 

    return cover; 

} 

私は考えても何もしません。

パス名の配列からイメージへのパスを取得してイメージをロードし、imageWithContentsOfFileメソッドを使用してイメージをロードすることをお勧めします。

私はこれを見て、これを行う方法を探しましたが、運がありませんでした。誰かが私にこのやり方を教えてもらえますか?あなたは以下のようにそれを行う必要があります

答えて

2

は、

if ([[filename pathExtension] isEqualToString:extension]) 
{ 
    [jpegFiles addObject:[UIImage imageWithContentsOfFile:[documentsDirectory stringByAppendingPathComponent:filename]]]; 
} 
+0

コードが通過結構です{場合は([[ファイル名pathExtension]はisEqualToString:拡張機能])申し訳ありません – user1114881

+0

は、他の編集上の長いにかかりましたが、ここでコードが通じ結構です{ if([filename pathExtension isEqualToString:extension]){[jpegFiles addObject:filename];}}拡張子.jpgを持つすべてのイメージファイルのファイル名を持つ配列を作成します。私はあなたのコードを使用しようとしましたが、うまくいきませんでした。私がしたいことは、jpegFiles配列のファイルをカバー配列にロードして使用するだけですが、実際にどのようにarrayWithArrayを試したのかわからない、arrayWithArrayのコピーはちょうどクラッシュし続けます。私は本当にあなたの助けと入力を感謝します。 – user1114881

+0

私が与えたコードは、jpegFiles配列のdocumentsDirectoryからすべてのjpegファイルのUIImageオブジェクトを提供します。 – cocoakomali

関連する問題