如何在IB中为UITableViewCell设置selectedBackgroundView?

时间:2015-11-18 13:16:40

标签: ios swift uitableview interface-builder

我知道如果要更改UITableViewCell的突出显示,我需要运行以下代码:

self.selectedBackgroundView = UIView(frame: self.frame)
self.selectedBackgroundView?.backgroundColor = UIColor.redColor()

但是如果我使用静态单元格并在Interface Builder中构建它们,我怎样才能更改selectedBackgroundView的{​​{1}}颜色?

2 个答案:

答案 0 :(得分:2)

我在节目中有点晚了,但我自己偶然发现了这一点,在玩了几分钟的故事板后,我发现了它。

在我的故事板中,我有一个UITableViewController,其表格视图只包含静态单元格。为了将单元格的selectedBackgroundView插座连接到视图,我必须首先创建该视图,并且必须驻留在同一场景中。所以我从库中抓取了一个新的UIView并将其拖到表视图控制器的场景中。我把它放在First ResponderExit出口之间,如下所示:

enter image description here

当我放手时,它在视图控制器之外显示为一个单独的视图,但它在同一个场景中,所以我可以连接它。看起来像这样:

enter image description here

然后我更改了该视图的背景颜色,并将每个静态单元格的selectedBackgroundView出口连接到该视图。瞧!我希望将来帮助某人。干杯: - )

答案 1 :(得分:1)

拖动静态单元格的出口

<beans:property name="driverClassName" value="com.mysql.jdbc.Driver" />

然后在@IBOutlet weak var firstRowCell: UITableViewCell!

viewDidLoad

截图

或者,您只需创建override func viewDidLoad() { super.viewDidLoad() let backgroundView = UIView(frame: firstRowCell.bounds) backgroundView.backgroundColor = UIColor.redColor() firstRowCell.selectedBackgroundView = backgroundView } 的子类。