Я пытаюсь назначить блок объекту кнопки, чтобы каждый раз при нажатии кнопки блок выполнялся. У меня есть следующий определенный подкласс кнопки, который содержит блок для каждой уникальной кнопки, которую я создаю.
typedef void (^ButtonPressBlock)();
@interface PhotoButton : UIButton
{
ButtonPressBlock photoButtonPressed;
}
@property (copy) ButtonPressBlock photoButtonPressed;
@end
В .m есть @synthesize photoButtonPressed.
В отдельном UIViewController я #import "PhotoButton.h", а затем в этом контроллере представления у меня есть метод, который создает кнопки. Код выглядит так.
PhotoButton* photoButton = [UIButton buttonWithType:UIButtonTypeCustom];
photoButton.frame = CGRectMake(i, j, thumbSize+2, thumbSize+2);
[photoButton setImage:photoThumb forState:UIControlStateNormal];
[photoButton setAdjustsImageWhenHighlighted:NO];
[photoButton setPhotoButtonPressed:^()
{
[self performSegueWithIdentifier:@"photoSegue" sender:aPhoto];
}];
назначение блока для photoButton не выполняется при выполнении с
- [UIButton setPhotoButtonPressed:]: неопознанный селектор отправлен в экземпляр ...
Не уверен, что делаю неправильно, так как блоки для меня в новинку. Я подумал, что это будет отличный способ сделать миниатюрное изображение отзывчивым на прикосновение, а затем перейти к полноразмерному изображению в другом контроллере представления. Теперь я не уверен.