使用drawRect重绘
问题描述:
我有一个UIView的子类,其中有一个drawRect。它基本上画了一条线和一个图像。 我已经在viewDidLoad中绘制了它,但是当视图更改为横向时需要更改布局。我怎样才能重绘这个?使用drawRect重绘
答
将视图的contentMode
设置为UIViewContentModeRedraw
。只要边界发生变化,视图将会调用[self setNeedsDisplay]
。您只需根据需要调整视图大小。
你的意思是将它设置在willRotateToInterfaceOrientation中?我也改变了UIView的y原点,但它并没有改变它 – xonegirlz 2012-02-24 08:13:52
你应该适当调整视图的大小,所以我猜'willRotateToInterfaceOrientation:'是个不错的选择。只要在那里执行'myView.frame = ...'。改变视图的“框架”原点并不真正改变它的“边界”(只影响视图的位置)。改变视图的“框架”大小。 – Costique 2012-02-24 08:21:03