Пользовательский uitablviewcell не вызывает didSelectRowAtIndexPath в контроллере

У меня есть пользовательский UITableViewCell полностью написанный в коде (без IB), у него есть дополнительная кнопка, которая просто вызывает didSelectRowAtIndexPath в представлении таблицы, и она работает правильно, и метод вызывается без проблем.

Однако, когда я нажимаю на самую ячейку (а не на аксессуарный вид), ничто не называется, почему?

EDIT: код огромен, чтобы разместить здесь … однако пользовательская ячейка содержит тонну ярлыков, пару изображений и просмотр прокрутки …

Это выстрел в темноте, но если в каждой ячейке есть много разных объектов (например, изображения, метки и т. Д.), Тогда он может не работать, потому что эти объекты – это то, что пользователь нажимает, когда они пытаются щелкнуть ячейку. Является ли ячейка синей (укажите выбор) вообще? Если нет, попробуйте скрыть / удалить эти объекты и посмотреть, работает ли это.

Если это так, то то, что вы можете сделать, это создать невидимую ячейку или кнопку, расположенную поверх других объектов, и вызовы didSelectRowAtIndexPath из-за кулис.

Это должно решить вашу проблему: Поднять событие выбора (didSelectRowAtIndexPath), когда подматривается UITableViewCell

Попробуйте присвоить свойству userInteractionEnabled вашего представления значение НЕТ.

Это заставит его игнорировать все события касания, а затем просмотры под ним смогут поймать эти события. – Фелипе Сабино

Я бы частично ответил на мой вопрос: широкое представление прокрутки препятствует вызову ячейки didSelectRowAtIndexPath, удаление scrollView решит проблему, однако я хочу назвать этот метод наличием scrollView … у кого есть идеи, будет высоко оценил …

Вы должны опубликовать свой код, чтобы понять, что вы сделали … Вы должны проверить этот пример, чтобы понять, правильный ли ваш код или нет …

http://www.edumobile.org/iphone/iphone-programming-tutorials/impliment-a-custom-accessory-view-for-your-uitableview-in-iphone/

Interesting Posts
Давайте будем гением компьютера.