UICollectionViewCell中的Swift 3按钮不响应触摸

时间:2018-03-08 09:30:41

标签: uicollectionview uibutton uicollectionviewcell

我有一个UICollectionViewCell和两个按钮,但按钮没有响应触摸,我以编程方式创建按钮并通过addSubView将其添加到单元格,但是当我添加持有者时。 addSubView无效!

UserInteractionEnabeld持有人是真的!

请帮助

class FavoriteProductCollectionViewCell: UICollectionViewCell {

    @IBOutlet weak var holder: UIView!


    override func awakeFromNib() {
        super.awakeFromNib()

        let btnFindBestPrice = UIButton(frame: CGRect(x: 0, y: 0, width: 151, height: 20))



        btnFindBestPrice.setTitle("Find best price", for: .normal)
        btnFindBestPrice.backgroundColor = UIColor.ButtonBackGreen

        btnFindBestPrice.isUserInteractionEnabled = true

        btnFindBestPrice.addTarget(self, action: #selector(findBestPrice), for: .touchUpInside)

        // AddTarget not working
        holder.addSubview(btnFindBestPrice)


        // AddTarget works fine
        addSubview(btnFindBestPrice)
    }
}

2 个答案:

答案 0 :(得分:0)

我不知道为什么!?但我创建了另一个具有相同配置的单元格,工作正常!!!!

答案 1 :(得分:0)

在这种情况下,最好在开头添加self。像这样:

self.holder.addSubview(btnFindBestPrice)