我试图在选择第0行
时旋转一个UIImage视图。在选择后,该部分需要重新加载以添加两个以上的单元格。这就是动画无法正常工作的地方。图像视图只会转换到新位置,而不执行动画。
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let cell = tableView.cellForRow(at: indexPath) as! CustomTableViewCell
if indexPath.row == 0 {
print(cell)
}
if displayCell {
UIView.animate(withDuration:0.3, animations: {
cell.rotateButtonImageView.transform = CGAffineTransform(rotationAngle: CGFloat(0))
})
if indexPath.row != 0 {
swap(&indexArr[indexPath.row], &indexArr[0])
print(indexArr)
}
} else {
UIView.animate(withDuration: 0.3, animations: {
cell.rotateButtonImageView.transform = CGAffineTransform(rotationAngle: (180.0 * .pi) / 180.0)
})
}
displayCell = !displayCell
tableView.reloadSections(IndexSet(integersIn: 0...0), with: .none)
}
还有那个在第0行的特定单元格,需要更新内容。 这是一个示例项目: