在方向更改期间使用drawRect拉伸

时间:2012-03-29 11:26:12

标签: iphone ios uitableview

我有一个tableView。我没有在每个tableViewCell中拥有多个子视图,而是添加了一个主子视图,该子视图在其drawRect方法中绘制每个其他子视图。 (我在某处读过这会让滚动动画看起来更好。还有apple有一个示例项目CustomTableViewCell。)

首先,问题是当我改变设备的方向时,drawRect不会自动调用。并且每个tableviewcell似乎都被拉伸了。 我用

解决了这个问题
mainView.contentMode = UIViewContentModeRedraw

这解决了这个问题。现在,当方向更改完成后,将自动调用drawRect。

但是在方向改变期间,旋转视图的动画仍然显示每个tableview单元被拉伸。这是一件非常小的事情,但仍然很明显。任何人都可以对此提出一些建议?????

1 个答案:

答案 0 :(得分:0)

您无法在动画期间重绘(无论如何都不容易)。

再次将表格单元格拆分为组件并正确设置自动调整大小。然后动画将仅为组件位置设置动画,它看起来很好。

你在哪里阅读drawRect:会让滚动动画变得更好?滚动动画有问题吗?

编辑: 恕我直言如何修复动画大小,并使用drawRect:而不是子视图来保持性能提升。