关于UITableViewCell内按钮的addTarget

时间:2017-07-28 22:27:09

标签: ios uitableview swift3 uibutton addtarget

我无法理解为什么我addTarget中的UIButton在特定情况下不起作用。

所以,有一个UITableViewCell,我以编程方式创建一个按钮,如:

let myClickButton : UIButton = {
    let button = UIButton()
    button.setTitle("Hit Test", for: .normal)
    button.tintColor = UIColor.white
    button.addTarget(self, action: #selector(printMessage), for: .touchUpInside)
    button.isUserInteractionEnabled = true
    return button
}()

而且,我的UITableViewCell类中还有一个按钮应该调用的函数:

func printMessage(){
    print("button was clicked")
}

但是,永远不会调用printMessage函数,并且控制台中没有错误。你能帮我理解这个案子的问题吗?这似乎是UITableViewCell的问题,因为我在常规的viewController上进行了明确的测试,但它运行良好。

非常感谢!

1 个答案:

答案 0 :(得分:1)

根据按钮闭包的位置,我会尝试在UITableViewCell实例化后设置目标。除此之外,如果没有看到更多代码,我不确定问题是什么。