我有一个cell
结构,看起来像这样:
contentView
与backgroundColor
tableView
具有相同的background
(蓝色),并且嵌套的view
具有白色,周围带有cornerRadius
和5p autoLayout
的白色边缘,因此看起来像像分隔的cells
,有点像连续的分隔的buttons
(让我知道是否需要图像)。
[每当我单击cell
时,我都想用另一种颜色突出显示cell
。通常,这将在storyBoard
attribute inspector
下的selection
中完成。但这严格连接到cell
,不会影响嵌套的views
。我可以使views
透明或完全将其删除,并且可以使用,但随后我错过了cells
的错觉。
我在这里读How to add spacing between UITableViewCell您可以使用sections
分隔cells
。很好,但是事情是我正在使用RxSwift
,如果我想要numberOfSections
delegate
,那么我还需要cellForRowAt
和numberOfRows
,并且与我的Rx
tableView
有点冲突。
[我尝试通过在嵌套的tag
中添加view
来以编程方式进行操作,如下所示:
var myView = self.contentView.viewWithTag(1) //self is cell
然后在color
Rx
中设置subscription
:
cell?.layer.backgroundColor = UIColor.green.cgColor
但是这只是行不通。任何想法如何解决这个问题?
覆盖单元格中的方法func setSelected(_ selected: Bool, animated: Bool)
,并根据selected
属性调整视图的方式。
或者,如果您不想覆盖此方法,则可以使用rx.methodInvoked
执行此操作。