我的单元格存储了一个项目,并且每当点击时该项目的数量都会增加。要删除数量,可以将单元格平移到左侧,数量为零。
每当单元格中有amount > 0
的项目时,单元格左侧会显示蓝线(CAShapelayer
)。
要将金额设定回0
,需要调用一个函数:
func deleteItem(_ index: IndexPath) {
// Amount is set to 0
tableView.reloadRows(at: [index], with: .none)
}
重新加载单元格时,蓝线将移出单元格。并且由于蓝线是CAShapeLayer
,因此它的隐式动画将启动并激活出单元格的蓝线。
问题:
但是,第一次(加载视图后)调用此函数时,蓝线(CAShapeLayer
)不会执行隐式动画。
如果我使用tableView.reloadData()
我不会遇到此问题,但即使我正在平移其他单元格导致其重置,它也会重新加载整个表格,所以我可以& #39; t使用tableView.reloadData()
。
问题:
为什么只是在加载视图后第一次蓝线的隐式动画(`CAShapeLayer)不起作用?如何确保此隐式动画始终有效?