2

我在自定义 UITableViewCell 和自定义 backgroundView 时遇到问题drawRect:

当用户选择我调用的单元格时

[tableView beginUpdates];
[tableView endUpdates];

并返回不同的高度tableView:heightForRowAtIndexPath。这使单元格动画到它的新高度。

所有这些都像一个魅力,但我在调整背景视图的大小时遇到​​了麻烦。目前,当单元格动画时,backgroundViews 内容会拉伸。这不是我想要的,而且看起来很可怕。我希望 backgroundView 在动画期间重绘其内容。这可能吗?如果可以,怎么做?

我在下图中说明了这个问题:

插图.

更新: 我发现这是发生的事情:

  1. 细胞开始时是一个大细胞。一切看起来都很好,每个人都很开心。
  2. 用户单击单元格。
  3. backgroundView 重新绘制它的新高度。
  4. 单元格动画并变小。因此,背景视图在动画期间处于拉伸状态。

我已经更新了图像以反映这种行为。

4

1 回答 1

1

您是否尝试过设置contentMode视图?它默认为缩放行为。有关更多信息,请参阅如何使自定义绘制的 UITableViewCell 正确调整大小?.

于 2012-08-30T12:05:25.967 回答