2014-04-09 64 views
2

我在iOS 7.1上测试我的应用程序,并且当执行下列行时,单元格会在短时间内消失(大约一秒),然后带有旧单元格的新单元格不会显示任何动画。iOS 7.1 insertRowsAtIndexPaths动画不起作用

[self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationBottom]; 

当我用动画移除单元格时,会发生同样的事情。

iOS7上不存在此问题。顺便说一下,我已经在模拟器和设备上进行了测试。可能是什么问题呢?

编辑: 我想出了问题,下面你可以找到答案。

+0

@nicael对不起,我正在调试它,看它是否表现相同,我编辑了这个问题。 –

回答

1

它完美地工作))))你写道不要使用动画:UITableViewRowAnimationNone。例如
UITableViewRowAnimationAutomatic代替。

+0

对不起,我正在调试,我忘了更改,UITableViewRowAnimationBottom应该在而不是UITableViewRowAnimationNone –

1

尝试线之间使用线(与动画作为@nicael建议的):

[self.tableView beginUpdates]; 

... 

[self.tableView endUpdates]; 

有时它有差别。

3

那么问题是由设置表格单元格的背景引起的:[UIColor clearColor];我在调试时想通了。由于我的tableview背景是纯色,我将该颜色分配给我的单元格视图的背景,现在动画正常工作,单元格不再消失。但是,我不知道为什么会发生这种情况在iOS 7.1中,而不是在iOS 7.0中。

+0

这也解决了我的问题! ios7.1中的 对单元格视图有一些更改。他们还改变了单元格视图剪辑,不剪辑内容 –