Я перебрал NSArray объектов NSDictionary, которые содержат данные для нескольких отображаемых изображений. Эти данные затем преобразуются в объекты UIImageView и добавляются в текущий вид как подпредставления. Достаточно просто! Все изображения, переданные через массив / dict, отображаются на экране по желанию, и пока он прекрасно работает:
for (NSDictionary *caseData in caseImages) { // caseImages is the array
UIImage *caseImage = [UIImage imageNamed:[caseData objectForKey:@"image_file"]];
UIImageView *caseView = [[UIImageView alloc] initWithImage:caseImage];
caseView.frame = CGRectMake([[caseData objectForKey:@"position_x"] intValue], [[caseData objectForKey:@"position_y"] intValue], [[caseData objectForKey:@"size_w"] intValue], [[caseData objectForKey:@"size_h"] intValue]);
[self.view addSubview:caseView ];
}
Однако теперь мне нужно сделать еще один шаг и реализовать обработчик события touchUpInside, который может быть присоединен к каждому из этих объектов UIImageView, если это возможно, таким образом, чтобы метод обработчика мог дополнительно анимировать / манипулировать каждым UIImageView, идеально центрируя и увеличивая затронутое изображение, и просто затемняя остальные изображения.
Я застрял на том, как успешно добавить сенсорные события, с возможностью ссылаться на изображение, к которому прикоснулся случай, а также на остальные нетронутые изображения, если это возможно, и затем применять соответствующие анимации перехода к каждому изображение соответственно.
Я видел примеры, похожие на фрагмент ниже, но я не смог заставить его работать:
[caseView addTarget:self action:@selector(spotlightCase) forControlEvents:UIControlEventTouchUpInside];
Хотя, если бы я на самом деле заставил его работать, я все еще чувствовал бы себя немного неуверенным в том, как успешно ссылаться на каждый и каждый UIImageView, созданный из цикла, так что каждое изображение может быть должным образом анимировано / обработано, в соответствии с которым один действительно был тронут. Нужно ли мне новое свойство массива в моем контроллере представления, которое будет содержать указатели для каждого объекта UIImageView, добавленного в представление? Ничего из этого даже не достижимо с UIImageViews? Я видел, как кто-то упоминал использование пользовательских объектов UIButton, но я подумал, что это может быть столь же сложно / невозможно увидеть, так как мне все равно нужно анимировать размер и расположение изображений.
Есть ли шанс, что вы сможете пролить свет на то, как реализовать все вышеперечисленные хитрые начинания?
Спасибо!