Я хочу, чтобы всегда первая видимая ячейка в моем UITableView имела цвет фона, отличный от других ячеек.
В настоящее время у меня есть это для моего UITableView
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 100
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableViewNew.dequeueReusableCell(withIdentifier: "cellNewPosts", for: indexPath) as! MainNewTableViewCell
return cell
}
И это, так что первая ячейка привязана к вершине. Технически, у меня есть строка, которая должна быть цветной (currentItemOnTop):
scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
// Vibration Feedback
let generator = UIImpactFeedbackGenerator(style: .light)
generator.impactOccurred()
guard var scrollingToIP = tableViewNew.indexPathForRow(at: CGPoint(x: 0, y: targetContentOffset.pointee.y)) else {
return
}
var scrollingToRect = tableViewNew.rectForRow(at: scrollingToIP)
let roundingRow = Int(((targetContentOffset.pointee.y - scrollingToRect.origin.y) / scrollingToRect.size.height).rounded())
scrollingToIP.row += roundingRow
scrollingToRect = tableViewNew.rectForRow(at: scrollingToIP)
targetContentOffset.pointee.y = scrollingToRect.origin.y
currentItemOnTop = scrollingToIP.row
}
Как мне этого добиться? Я много чего перепробовал, но думаю, что моя проблема в том, что я использую многоразовые клетки.