Я использую Xcode 7 Beta, Swift 2 У меня есть табличный вид с пользовательским tableViewCell. В пользовательской ячейке есть UIImageView и Label. Я также определил класс testCell для этого tableViewCell. На изображении (в таблице) я добавил UITapRecogniser. Я также включил взаимодействие с пользователемiOS - TapRecogniser в пользовательском TableViewCell не работает должным образом
Проблема: В настоящее время у меня есть 3 строки в таблице. Когда я нажимаю на изображения на первых 2 строках. Ничего не произошло. Когда я нажимаю на изображение в последней строке - действие печатает «DEF» на консоли. Это не имеет ничего общего с количеством строк - проблема сохраняется даже после перехода на 4, 5 или что-то еще. В основном используется только изображение в последней строке. Не знаете, почему ??? Ниже приведен код:
//Defining custom class for the TableViewCell
class testCell : UITableViewCell{
@IBOutlet weak var testLabel: UILabel!
@IBOutlet weak var testImage: UIImageView!
}
class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 3
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! testCell
cell.testLabel?.text = "ABC"
cell.testImage?.image = UIImage(named: "Santa")
return cell
}
@IBOutlet weak var tableView: UITableView!
//TapGestureRecogniser Function
@IBAction func imageTap(sender: AnyObject) {
print("DEF")
}
переместите вызов распознавателя вызова с помощью testCell на cellforrowatindexpath. let cell = tableView.dequeueReusableCellWithIdentifier ("cell", forIndexPath: indexPath) как! testCell cell.testLabel .text = "ABC" cell.testImage .image = UIImage (назван: "Санта")? пусть cellTapRecognizer = UITapGestureRecognizer (цель: самостоятельно, действие: Selector ("handleTap:")) cellTapRecognizer .cancelsTouchesInView = false cell.testImage? .addGestureRecognizer (cellTapRecognizer) –