考虑使用drawRect:
中绘制的自定义背景的视图。如果视图更改大小,则需要重新绘制背景。
这是个坏主意吗?
- (void) layoutSubviews
{
[super layoutSubviews];
[self setNeedsDisplay];
}
如果是,考虑到我无法控制谁更改视图的大小,那么什么是更好的选择呢?
答案 0 :(得分:11)
不要这样做,没有必要。将视图的contentMode
设置为UIViewContentModeRedraw
:
UIViewContentModeRedraw
通过调用setNeedsDisplay方法在边界更改时重新显示视图。 适用于iOS 2.0及更高版本。 在UIView.h中声明。
这将达到同样的效果。