Я застреваю в проблеме, создающей мое приложение в быстром режиме. В основном у меня есть табличное представление, которое отображает данные в пользовательской ячейке. теперь эта ячейка делится на два изображения; один слева и один справа.Узнайте координаты, в которые была нажата ячейка
Когда камера нажата; метод didSelectRowAtIndexPath
называется, однако я хочу узнать, какая часть ячейки была нажата; будь то правильный образ или левое изображение.
Одним из способов сделать это было переопределение события touchesbegan
моего пользовательского класса ячеек; я могу получить координаты касания таким образом и вручную проверить, было ли выбрано левое изображение или правильное изображение; однако это приводит к тому, что событие d idSelectRowAtIndexPath
не запускается.
override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
let touch = touches.first as! UITouch
let location = touch.locationInView(self)
var xcoord = location.x
touchPosition = xcoord
}
Этого код то, что я пытался использовать в моем пользовательском классе клеток, но я не знаю теперь, как огнь didSelectRowAtIndexPath
события таблицы, в которой существует эта клетка. У меня нет никакой ссылки на эту таблицу.
Здесь touchPosition - это глобальная переменная, и я пытался ее установить, чтобы получить доступ к ней в моем методе didSelectrowAtIndexPath
, но он не срабатывает.
подключить розетку к вашему Tableview и удалить переопределение –
вы можете получить ячейку в didselect метода с использованием вара selectedCell = tableView.cellForRowAtIndexPath (indexPath) в UITableViewCell! – Amit89
Вы должны называть 'super'. –