我在我的UIButton中添加了一个适合其内容的子视图,问题是我单击按钮后无法听按钮的动作,我的猜测是因为我的UIButton在我添加的子视图的下面,但是我不知道该怎么解决。
这是我的用于在按钮中添加子视图的代码
func setButtonContent(myButtonView: UIButton, textLabel: String, textViewDescription: String) {
if let nibFile = Bundle.main.loadNibNamed("nibName", owner: self, options: nil)?.first as? FundTransferButton {
nibFile.frame.size.height = myButtonView.frame.size.height
nibFile.frame.size.width = myButtonView.frame.size.width
nibFile.label.text = textLabel
nibFile.textViewDescription.text = textViewDescription
myButtonView.addSubview(nibFile)
}
}
我只想创建一个包含自定义设计的自定义按钮。
答案 0 :(得分:1)
您的紧迫问题可以通过以下方式解决:
nibFile.isUserInteractionEnabled = false
这会使您要添加的子视图不响应轻击事件,因此轻击事件会“通过”子视图并“到达”按钮。
但是,如果您只想创建自定义UIButton
,则应该继承UIControl
或UIButton
的子类,并在xib文件中设计按钮本身。
答案 1 :(得分:0)
您可以在UIButton的图层下添加子视图图层。
myButtonView.insertSubview(nibFile, at: 0)