Ios 按钮不响应TableViewCell内的点击

Ios 按钮不响应TableViewCell内的点击,ios,uitableview,swift,uibutton,Ios,Uitableview,Swift,Uibutton,我有一个带有按钮的自定义TableViewCell。在切换到动态单元格之前,此按钮工作正常。但是,现在该按钮不可选择 按钮在触摸时甚至不会突出显示 最好的部分是什么?如果我禁用自动布局,当按钮出现在viewcontroller的最顶部时,几乎太小而无法触摸。。。它起作用了 尝试删除autolayout并以编程方式更改按钮在单元格中的位置的事件(如下所示)无效: Button.frame.origin.x=self.contentView.frame.width/2 “我的按钮”的代码: clas

我有一个带有按钮的自定义TableViewCell。在切换到动态单元格之前,此按钮工作正常。但是,现在该按钮不可选择

按钮在触摸时甚至不会突出显示

最好的部分是什么?如果我禁用自动布局,当按钮出现在viewcontroller的最顶部时,几乎太小而无法触摸。。。它起作用了

尝试删除autolayout并以编程方式更改按钮在单元格中的位置的事件(如下所示)无效:

Button.frame.origin.x=self.contentView.frame.width/2

“我的按钮”的代码:

class HotelRateCell: UITableViewCell {

   @IBOutlet weak var hotelRateTitle: UILabel!    
   @IBOutlet weak var hotelRatePrice: UILabel!    
   @IBOutlet weak var type: UILabel!    
   @IBOutlet weak var details: UILabel!
   @IBOutlet weak var button: UIButton!

   override func awakeFromNib() {
      super.awakeFromNib()
      //tried both enabled and disabled
      self.contentView.userInteractionEnabled = true
   }

   override func setSelected(selected: Bool, animated: Bool) {
     super.setSelected(selected, animated: animated)   
   }
}
以及实际行动的代码

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell: HotelRateCell = tableView.dequeueReusableCellWithIdentifier("HotelRateCell", forIndexPath: indexPath) as! HotelRateCell

    cell.reservationButton.tag = indexPath.row

    cell.button.addTarget(self, action: "reservationButton:", forControlEvents: .TouchUpInside)
    cell.reservationButton.addTarget(self, action: "reservationButton:", forControlEvents: UIControlEvents.TouchUpInside)

    return cell
}

 func reservationButton(sender: UIButton!) {
    if sender.tag == 0 {
    UIApplication.sharedApplication().openURL(NSURL(string: "http://reddit.com")!)
        println("rservation button pressed")

    }
}

你调试过单元格的框架和按钮了吗?可能您的单元格的高度为0,并且
clipsSubviews
设置为
false
,这就是按钮无法单击的原因。同样使用
indexPath.row
作为标记也不是一个好主意,因为标记的默认值是0。感谢indexPath.row上的指针,我对视图调试不太熟悉,高度绝对不是0。不太确定clilpsSuviews会做什么?@CatalinaT。我可以确认contentView上没有禁用ClipsSubview,我也在按钮上启用了它以进行实验,但什么都没有发生。没有禁用的事实可能是问题所在。尝试将单元格和contentView的值设置为true,然后查看是否仍然可以看到单元格的内容。另外,您能在计算单元格高度的地方添加代码吗?也许问题就在那里