旋转UIView并仍然看到视图的旧位置

时间:2011-03-21 21:20:30

标签: iphone objective-c cocoa ios

我正在使用src.transform = CGAffineTransformMakeRotation(M_PI/2);旋转视图,它运行良好,但我仍然看到视图的旧位置(如:http://cl.ly/233y403c2C1C451r1f28)。

如何刷新视图?该视图位于UITableViewCell中,我尝试刷新单元格的行甚至是tableview,但它不起作用。

这是我的drawRect方法:

  if (nil != _image) {
    [_image drawInRect:rect contentMode:self.contentMode];
  } else {
    [_defaultImage drawInRect:rect contentMode:self.contentMode];
  }

我正在旋转的视图嵌入在UIImageView中,它是单元格的一部分。

谢谢, 马丁

3 个答案:

答案 0 :(得分:0)

听起来你可能有两张图片视图副本。旋转顶部时,底部曝光。

答案 1 :(得分:0)

你是否覆盖了drawRect的UIView的背景颜色是什么?在调用drawRect之前,背景颜色应用于上下文。确保您具有背景颜色集(例如,未设置为[UIColor clearColor])。

此外,你的UIView的opaque属性设置为什么?

答案 2 :(得分:0)

如果想出来的话。我在下载时试图旋转图像。当我从图像加载时调用的委托回调中旋转它时,一切正常 所有这一切都很有意义!