4

考虑一个具有自定义背景的视图,该视图以drawRect:. 如果视图改变大小,则需要重新绘制背景。

这是一个坏主意吗?

- (void) layoutSubviews
{
    [super layoutSubviews];
    [self setNeedsDisplay];
}

如果是,考虑到我无法控制谁更改视图的大小,有什么更好的选择?

4

1 回答 1

11

不要那样做,没必要。将contentMode视图的设置为UIViewContentModeRedraw

UIViewContentModeRedraw

通过调用 setNeedsDisplay 方法在边界更改时重新显示视图。在 iOS 2.0 及更高版本中可用。在 UIView.h 中声明。

这将达到相同的效果。

于 2012-11-17T21:26:26.377 回答