2011-02-09 11 views
1

私はランダムに選択し、リソースフォルダから画像の束から2つの画像を表示するアプリケーションを構築しています。 [パスカウント]のチェックNSMutableArrayへの画像ファイルのロード

-(void)viewDidLoad { 
    [super viewDidLoad]; 
    srandom(time(0)); 

    NSMutableArray *paths = [[[NSBundle mainBundle] pathsForResourcesOfType:@"jpg" inDirectory:nil] mutableCopy]; 

    for(NSString *filename in paths) 
    { 
     filename=[filename lastPathComponent]; 
     [filenames addObject:filename]; 
    } 

    [paths release]; 
    [self reset]; 
} 

正常画像の数を返し、何も ファイル名がNSMutableArrayのある..ファイル名のアレイに割り当てされていないと、それはinitWithNibNameに配置されています。 何が間違っている可能性がありますか? さらに、[パス数]は、リソース内のイメージの実際の数よりも高い数字を返しています。これはちょっと変わっています... 私はこれを理解しようと多くの時間を費やしましたが、固まってしまいました... 誰も私を助けてくださいできますか?

答えて

2

あなたのinitWithNibNameメソッドを投稿できますか? また、私はあなたの "ファイル名"の使用を少し疑っています。 このように、あなたのforループ内でその変数を省略してください:パス内の各ファイル名のうち、正確

for (NSString *filename in paths) 
{ 
NSLog("@ filename is %@", filename); 
[filenames addObject: [filename lastPathComponent]]; 
NSLog(@" filenames array length is now %d", [filenames count]); 
} 

何をして来ていますか?

+0

あなたのコードを置くと、ファイル名は正しく割り当てられますが、ファイル名配列の長さは常にゼロです。何が間違っているのでしょうか? – CosmicRabbitMediaInc

+0

ファイル名配列の宣言(.hファイル内) この行をforループの上に置きます。 NSLog(@ "ファイル名は0x%x"、ファイル名); 実際に割り当てられているかどうかを教えてください。 – Rayfleck

+0

NSLogは私にファイル名が0x0であることを伝えます。割り当てられていないと仮定します。ファイル名は.hファイルで次のように宣言されます:NSMutableArray * filenames; initWithNibNameに割り当てられています...私はそのプロパティも宣言する必要がありますか? – CosmicRabbitMediaInc

関連する問題