распознавание жестов работает на кнопках или нет? - PullRequest
0 голосов
/ 16 ноября 2010

В своем приложении я написал следующие строки кода:

- (void)viewDidLoad {
[super viewDidLoad];

UITapGestureRecognizer *tapper = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapped:)];

[mybutton1 addGestureRecognizer:tapper];
[mybutton2 addGestureRecognizer:tapper];
[mybutton3 addGestureRecognizer:tapper];

    [tapper release];
}

-(void)tapped:(UIGestureRecognizer *)sender{
NSLog(@"I'am in tapped");


}

, но ничего не произошлоЗачем ?и если мне нужно получить внутри кнопки текущий заголовок кнопки, могу ли я?

Спасибо

Ответы [ 3 ]

0 голосов
/ 16 ноября 2010

Вам не нужно использовать распознаватель жестов, чтобы просто определить, когда нажата кнопка.Кнопка знает, когда она нажата!

Попробуйте:

{
  // Blah...
  [myButton addTarget:self action:@selector(tapped:) forControlEvents:UIControlEventTouchUpInside];

  // Other stuff
}

-(void)tapped:(id)sender {
  NSLog (@"I'm in tapped!");
}
0 голосов
/ 16 ноября 2010

Распознаватель жестов может быть прикреплен только к одному представлению за раз. Работать с одиночными нажатиями на кнопки можно так же легко, используя IBAction. Вы можете создать один IBAction и подключить к нему все три кнопки.

- (IBAction)tapped:(id)sender {
UIButton *button = (UIButton *)sender;
NSLog(@"%@", button.titleLabel.text);
}

Аналогичный вопрос: UITapGestureRecognizer на кнопке UIB

0 голосов
/ 16 ноября 2010

Вам не хватает делегата распознавателя.Реализуйте это.Вы также должны добавить протокол UIGestureRecognizerDelegate в заголовочный файл и сделать recognizer.delegate = self.

re: получение заголовка - вы можете получить заголовокв вашем обработчике события касания вы можете извлечь эту информацию из объекта отправителя.я выложу код позже ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...