2011-02-09 8 views
1

리소스 폴더의 이미지 모음에서 두 이미지를 무작위로 선택하여 표시하는 앱을 만들고 있습니다. [경로 계산] 점검NSMutableArray에서 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 (NSString *filename in paths) 
{ 
NSLog("@ filename is %@", filename); 
[filenames addObject: [filename lastPathComponent]]; 
NSLog(@" filenames array length is now %d", [filenames count]); 
} 

정확히 어떤 경로에있는 각 파일 이름에서오고있다?

+0

코드를 삽입하면 파일 이름이 올바르게 할당되지만 파일 이름 배열 길이는 항상 0이라고 표시됩니다. 무엇이 잘못 될 수 있습니까? – CosmicRabbitMediaInc

+0

파일 이름 배열을 선언하는 위치와 방법 (.h 파일) for 루프 위에 다음 줄을 넣으십시오. NSLog (@ "filenames is 0x % x", 파일 이름); 실제로 할당되었는지 여부를 알려줘야합니다. – Rayfleck

+0

NSLog는 파일 이름이 0x0 인 것을 알려주려고합니다. 할당되지 않은 것으로 가정합니다 ... 파일 이름은 .h 파일에서 다음과 같이 선언됩니다. NSMutableArray * filenames; 그리고 initWithNibName ...에 할당 된 속성을 선언해야합니까? – CosmicRabbitMediaInc