我有一个自定义UITableViewCell
,其中一个子视图是button
(标题为" RSVP"):
它连接到以下代码:
class SelectedEventsTableViewCell: UITableViewCell {
@IBOutlet weak var titleLabel: UILabel!
@IBOutlet weak var dateLabel: UILabel!
@IBOutlet weak var descriptionLabel: UILabel!
@IBOutlet weak var attendanceLabel: UILabel!
@IBOutlet weak var attendanceButton: UIButton!
}
我正在尝试通过将此代码添加到SelectedEventsTableViewCell
类来更改按钮的背景颜色:
override func awakeFromNib() {
super.awakeFromNib()
attendanceButton.backgroundColor = UIColor.greenColor()
}
但是,它不起作用。该按钮获得白色背景:
有人知道为什么会这样吗?当按下按钮时,以编程方式设置按钮的背景颜色时,它也不起作用。
感谢您的帮助。
答案 0 :(得分:0)
检查您将按钮背景颜色设置为白色的位置。
attendanceButton.backgroundColor = UIColor.whiteColor()
检查在TableView的数据源中使用SelectedEventsTableViewCell对象的位置或viewController中的委托方法。
离。
cell.attendanceButton.backgroundColor = UIColor.whiteColor()
答案 1 :(得分:0)
有几个可能的原因
你能让这个出口进入吗?如果没有,请从故事板中按CTRL-DRAG
2.你在awakeFromNib()
之后改变了吗?也许你在cellForIndexPath
(表视图数据源)中再次设置它
3.Cell被重用了但是醒了一次。这意味着您应该在重用后恢复其状态。 prepareForReuse()
专为此而设计。