Отключение сенсорного взаимодействия пробелов между ячейками пользовательского табличного представления
Я использую пользовательские ячейки подкласса UITableViewCell в табличном представлении. И между клетками должно быть пространство. Я успешно добавляю пространство с добавлением подпредставления, которое я назвал SpaceView, в представление содержимого. Но когда я коснулся spaceView, он воспринимается как я коснулся клетки. И вызвал метод didSelectRow. Я пытался установить SpaceView UserInteractionEnabled==NO
, Но это не работает.
Итак, мой вопрос: Это правильный путь, который я использовал, чтобы добавить пространство между ячейками? Должен ли я попытаться добавить клетки для создания места? или если это правильный путь, как я могу предотвратить вызов метода didSelectRowAtIndexPath, когда я коснулся spaceView?
2 ответа
Как сказал Индер ниже, вы можете использовать UIButton для решения проблемы.
1) в пользовательской ячейке: в нижней части пользовательской ячейки добавьте пустую кнопку UIB с нужной вам высотой между ячейками и настройте цвет фона в соответствии с вашими потребностями.
2) в cellforrowatindexpath: отключить кнопку каждой ячейки. (или вы также можете сделать это в Интерфейсном Разработчике предыдущего шага)
результат: у вас есть отключенная кнопка очистки, которая будет отображаться как необходимый интервал между ячейками.
Сделай свой spaceView
как UIButton
(Я думаю, это UIView
прямо сейчас)
Когда вы добавляете UIButton
это касание будет использовано кнопкой, поэтому касание не будет передано его родителю.
ИЛИ ЖЕ
Я не уверен, будет ли это работать или нет, вы можете добавить жест spaceView