2017-01-24 5 views
2

У меня есть кнопка и UITextView, кнопка имеет IBAction, которая печатает Hello World, я хочу, чтобы при нажатии UITextView она также будет выполнять ту же функцию, что и кнопка , Я в настоящее время этот код в моем viewDidLoad ..Detect Tap в UITextView Objective C uneditable и unselectable

UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(helloWorldPressed:)]; 
gestureRecognizer.delegate = self; 
[_messageTextLine1 addGestureRecognizer:gestureRecognizer]; 

Вот моя функция

- (IBAction)helloWorldPressed:(id)sender { 
     NSLog(@"Hello World!"); 
} 

Обратите внимание, что у меня уже есть

<UIGestureRecognizerDelegate>

в моем файле .h.

Дополнительная Примечание: UITextView является НЕ редактируемой и НЕ выбираемого

Как я могу это сделать, что, когда я нажимаю на TextView он будет действовать как кнопка, и делать ту же функцию helloWorldPressed?

Должен ли я создать новую функцию для жесты, чтобы сделать это, в основном, делает то же самое? Как вы думаете, что я могу сделать? Благодаря!

+0

В чем вопрос? –

+0

@NiravD как я могу это сделать, когда при нажатии TextView он будет действовать как кнопка и выполняет ту же функцию helloWorldPressed – EdSniper

+0

Если вы добавляете один и тот же экземпляр gestureRecognizer для кнопок 'button' и' textView', тогда он будет не работает, вам нужно создать два разных экземпляра для обоих элементов интерфейса. –

ответ

1

Из-за вашего UITextView НЕ редактируется и НЕ выбирается, это означает, что вы установили _messageTextLine1 .userInteractionEnabled = NO, чтобы он не мог наблюдать за любым жестом. Перейдите на _messageTextLine1 .userInteractionEnabled = YES, и он будет работать.

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

  • Нет связанных вопросов^_^