У меня есть некоторый код, который случайным образом отображает данное изображение .png и его заголовок. Логика заголовка работает нормально.Однако по какой-то причине отображаются только два из четырех изображений.Я попытался изменить порядок на всякий случай, но отображаются только те два изображения, pic_c и pic_d.Я также проверил правописание, и что файлы находятся в ресурсах и существуют в файловой системе.Вот код, который отображает изображение:
NSMutableArray *fileNameArray = [[NSMutableArray alloc] init];
[fileNameArray addObject:[NSString stringWithFormat: @"pic_a"]];
[fileNameArray addObject:[NSString stringWithFormat: @"pic_b"]];
[fileNameArray addObject:[NSString stringWithFormat: @"pic_c"]];
[fileNameArray addObject:[NSString stringWithFormat: @"pic_d"]];
NSMutableArray *titleArray = [[NSMutableArray alloc] init];
[titleArray addObject:[NSString stringWithFormat: @"pic a"]];
[titleArray addObject:[NSString stringWithFormat: @"pic b"]];
[titleArray addObject:[NSString stringWithFormat: @"pic c"]];
[titleArray addObject:[NSString stringWithFormat: @"pic d"]];
int index = arc4random() % [fileNameArray count];
NSString *pictureName = [titleArray objectAtIndex:index];
art_title.text = pictureName;
NSString* imagePath = [ [ NSBundle mainBundle] pathForResource:pictureName ofType:@"png"];
UIImage *img = [ UIImage imageWithContentsOfFile: imagePath];
if (img != nil) { // Image was loaded successfully.
[imageView setImage:img];
[imageView setUserInteractionEnabled:NO];
[img release]; // Release the image now that we have a UIImageView that contains it.
}
[super viewDidLoad];
[fileNameArray release];
[titleArray release];
}
Есть идеи, почему это может происходить?
Недавние сведения: если я удаляю titleArray и использую только массив имен файлов, отображаются все изображения.Тем не менее, я все еще хотел бы иметь возможность использовать titleArray.