В моем приложении я динамически добавляю изображения в свое представление во время выполнения. Я могу иметь несколько изображений на экране одновременно. Каждое изображение загружается из объекта. Я добавил tapGestureRecongnizer к изображению, чтобы при касании вызывался соответствующий метод.
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageTapped:)];
[plantImageView addGestureRecognizer:tapGesture];
Моя проблема в том, что я не знаю, какое изображение я нажал. Я знаю, что могу вызвать tapGestureRecognizer.location, чтобы получить местоположение на экране, но это не очень хорошо для меня. В идеале я хотел бы иметь возможность передать объект, из которого было загружено изображение, в жест касания. Однако кажется, что я могу передать только имя селектора «imageTapped:», а не его аргументы.
- (IBAction)imageTapped:(Plant *)plant
{
[self performSegueWithIdentifier:@"viewPlantDetail" sender:plant];
}
Кто-нибудь знает способ, которым я могу передать свой объект в качестве аргумента в tapGestureRecongnizer или каким-либо другим способом, которым я могу обработать его?
Спасибо
Брайан