Использование iOS 9 и столкновение с проблемой с UITapGestureRecognizer
. У меня есть ViewController-A с UITableView
. Я добавил tableViewCell, у которого есть textLabel. Я хочу применить tap на textLabel. Поэтому, если я нажимаю на textLabel - он должен печатать на консоли или делать что-либо ещеiOS 9: Распознаватель жестов был настроен в раскадровке/xib для добавления к нескольким представлениям (не работает)
Вопрос: TapRecogniser не работает. Получение ниже сообщение об ошибке:
Вот что я сделал:
1) Добавлен `UITapGestureRecognizer» на TextLabel (из раскадровки). Включено Взаимодействие пользователя для TextLabel (ошибка даже сейчас)
2) Ниже приводится IBAction:
@IBAction func nameTap(sender: UITapGestureRecognizer) {
print("a")
}
3) CellForRowAtIndexPath
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cell") as! ThirdViewCell!
cell.nameLabel?.text = "XYZ"
let nameTapRecognizer = UITapGestureRecognizer(target: self, action: Selector("nameTap:"))
nameTapRecognizer.cancelsTouchesInView = false
cell.nameLabel?.addGestureRecognizer(nameTapRecognizer)
return cell
}
PS: 1) Это работает в iOS 8. Я проверил ... Нет дубликатов (есть только один распознаватель крана во всем файле и связанный с textLabel)
2) Я не хочу использовать метод didSelectRowAtIndexPath, поскольку мне нужно реализовать TapGestureRecognizer для большего количества textLabels в tableViewCell.
кран не working..nothing происходит после того, реализующей код..i снял скриншот об ошибке и опубликовал в вопросе –
Избавьтесь от UITapGestureRecognizer, который вы добавили в раскадровки. Он должен быть установлен только в вашей 'cellForRowAtIndexPath'. – vacawama