2015-02-20 3 views
0

Прикоснувшись к подклассу uiimageview, который я создал, я могу вызвать функцию touchhesBegan в подклассе ... но как мне вызвать другую функцию в исходном контроллере представления изнутри, что касается начал?Вызывающие функции в контроллере представления для подкласса UIImageView

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    NSLog(@"-- I AM TOUCHED --"); 


//need to call (void)selectPhoto in viewController that contains subclass of uiimageview 
} 

ответ

1

Вместо использования touchesBegan, вы должны использовать UITapGestureRecognizer прикрепленного к представлению изображения и сделать его целевой контроллер вида. Если есть еще одна причина, вы подклассифицировали ваше изображение, вам не нужно будет этого делать, если вы используете этот подход.

+0

Как подключить его к изображению? извините заранее, если это глупый вопрос – mnot

+0

@MarkusNotti, звучит как вопрос от кого-то, кто не читал документацию. Пожалуйста, прочитайте ссылку на класс UIGestureRecognizer, вы найдете там ответ. Убедитесь, что для представления изображения установлено значение userInteractionEnabled равным YES, так как по умолчанию оно НЕТ. – rdelmar

+0

nvm получил: self.imageChosen.userInteractionEnabled = YES; UITapGestureRecognizer * tgr = [[UITapGestureRecognizer alloc] initWithTarget: self action: @selector (handleTap)]; tgr.delegate = self; [self.imageChosen addGestureRecognizer: tgr]; – mnot

Смежные вопросы