当我向上滚动阴影无法正常工作时,在tableview单元中的视图中有阴影。我相信是因为状态变化,但我不知道该怎么做。这是我的代码
在此之前向上滚动:
向上滚动后:
class PerformanceKnowledgeCell: UITableViewCell {
@IBOutlet weak var hrzStackView: UIStackView!
@IBOutlet weak var containerView: UIView!
override func awakeFromNib() {
containerView.layer.shadowColor = UIColor.borderColor.cgColor
containerView.layer.shadowOffset = CGSize(width: -1, height: 8)
containerView.layer.shadowOpacity = 1.0
containerView.layer.shadowRadius = 10
containerView.layer.masksToBounds = false
contentView.clipsToBounds = false
contentView.layer.masksToBounds = false
clipsToBounds = false
layer.masksToBounds = false
}
}
谢谢
答案 0 :(得分:0)
该问题可能与单元的实际重用有关。这意味着在滚动时,最后一个单元格将被删除并再次插入。因此,视图的顺序已更改。
我能够使用单元格的zPosition修复此问题(=维护顺序):
func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
cell.layer.zPosition = CGFloat(tableView.numberOfRows(inSection: 0) - indexPath.row)
}