UIImageView子类需要处理resize

时间:2013-10-07 03:35:30

标签: ios uiview uiimageview core-graphics

我正在创建一个UIImageView子类来显示音频波形。方法是加载文件,进行数学运算,保存PNG文件,然后self.image = thePNG。关于这一点的好处是,在调整大小或重新绘制时,UIImageView将拉伸PNG并快速拉伸。

现在如果图像扩展太多,我需要重新计算波形以避免可见的像素化。既然我们知道UIImageView does not call drawRect,是否有一个在调整大小期间调用的方法,以便我可以决定是否需要重绘?

P.S。重新计算后,我将在计算后fading in the new image。希望这对Google Earth等用户来说是无缝的。

1 个答案:

答案 0 :(得分:2)

这是一个解决方案:

- (void)layoutSubviews
{
    [super layoutSubviews];
    NSLog(@"%@", NSStringFromCGRect(self.frame));
}

与David Jeske在Is there a UIView resize event?

中指出,与此相关的是,不会为动画的每一帧调用它。

其他不起作用的想法: