Единственная проблема, которую я вижу, это
for ( int i = 1; i <= photosInRow ; i++ ){
imageView = (UIImageView *)[cell.contentView viewWithTag:j];
[self showImage:imageView];
}
Что здесь j
? Я предлагаю вам изменить это на i
, т.е.
for ( int i = 1; i <=photosInRow ; i++ ){
imageView = (UIImageView *)[cell.contentView viewWithTag:i];
[self showImage:imageView];
}
В качестве единственного другого недостатка я вижу здесь логику,
for (int i=0; i <= [wordsInSentence count]; ++i) {
UIImageView *imageView1 = [[[UIImageView alloc] initWithFrame:CGRectMake(30+90*(i%4), 15, 80, 100)] autorelease] ;
imageView1.tag = i+1;
[imageViewArray insertObject:imageView1 atIndex:i];
[cell.contentView addSubview:imageView1];
}
Вам нужно всего лишь добавить 4 просмотра изображений подряд. Не общее количество просмотров изображений в каждой строке. Это ошибочная логика. Предлагаемое обновление до
for (int i = 0; i < 4; ++i) {
UIImageView *imageView1 = [[[UIImageView alloc] initWithFrame:CGRectMake(30+90*(i%4), 15, 80, 100)] autorelease] ;
imageView1.tag = i+1;
int trueImageIndex = indexPath.row * 4 + i;
[imageViewArray insertObject:imageView1 atIndex:trueImageIndex];
[cell.contentView addSubview:imageView1];
}