2013-03-23 1 views
1

Im new для Xcode и im, пытающихся вытащить кучу изображений из массива и поместить их на экран, но через отладчик я вижу, что цикл for for не работает.Загрузка изображений из массива на экран на iPhone

for (int i = 0; i <[imagePaths count]; i++) 
{ 
    NSLog(@"I'm loading a card"); 

    UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 10, 250, 350)]; 
    NSString *imgFilepath = [[NSBundle mainBundle] pathForResource:[imagePaths objectAtIndex:i] ofType:@"jpg"]; 
    UIImage *img = [[UIImage alloc] initWithContentsOfFile:imgFilepath]; 
    [imgView setImage:img]; 
    [self.view addSubview:imgView]; 

} 

Кто-нибудь видит, что им недостает, чтобы сделать эту работу?

+0

is 'imagePaths', равный' nil'? –

+0

Изображения уверены .jpg нет .png/.jpeg формат? IMO, которая также может вызвать проблемы. –

+0

Да, они .jpg – DarkAssassin

ответ

1

Я вижу, что мой цикл for не работает.

Проверьте, пожалуйста, [imagePaths count], используя код ниже цикла.

Это будет ноль. Это означает, что ваш imagePaths массив будет null

NSlog(@"imagePaths count is: %d",[imagePaths count]); 
+0

Я попытался добавить эту строку кода выше цикла for, но это дает мне 2 ошибки. Ошибка Apple Mach-o Linker «_NSlog», на которую ссылаются: - [ViewController viewDidLoad] в ViewController.o и ошибке Apple Mach-O Linker, неудачная команда Linker с кодом выхода 1 (используйте -v для просмотра вызова) какие-либо идеи? – DarkAssassin

+0

есть. Использовать NSLog (@ "количество изображений:% d", [imagePaths count]); –

+0

Код работал без ошибок сейчас, но счет 0 – DarkAssassin

0
// Check what your imagePaths array contains, if it contains full path of image including filename and extension then use following code 
for (int i = 0; i <[imagePaths count]; i++) 
{ 
    NSLog(@"I'm loading a card"); 

    UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 10, 250, 350)]; 
    UIImage *img = [[UIImage alloc] initWithContentsOfFile:[imagePaths objectAtIndex:i]]; 
    [imgView setImage:img]; 
    [self.view addSubview:imgView]; 
} 
+0

Можете ли вы объяснить, что такое noob? ха-ха – DarkAssassin

0

Если это не работает, то imagePaths должен быть равен нулю. Добавьте контрольную точку прямо перед ней и проверьте, есть ли в ней что-либо.

Возможная ошибка новичка: правильно ли вы выделили и инициализировали imagePaths?

Смежные вопросы