2012-02-24 53 views
0

我有一個UIView的子類,其中有一個drawRect。它基本上畫了一條線和一個圖像。 我已經在viewDidLoad中繪製了它,但是當視圖更改爲橫向時需要更改佈局。我怎樣才能重繪這個?使用drawRect重繪

回答

6

將視圖的contentMode設置爲UIViewContentModeRedraw。只要邊界發生變化,視圖將會調用[self setNeedsDisplay]。您只需根據需要調整視圖大小。

+0

你的意思是將它設置在willRotateToInterfaceOrientation中?我也改變了UIView的y原點,但它並沒有改變它 – xonegirlz 2012-02-24 08:13:52

+0

你應該適當調整視圖的大小,所以我猜'willRotateToInterfaceOrientation:'是個不錯的選擇。只要在那裏執行'myView.frame = ...'。改變視圖的「框架」原點並不真正改變它的「邊界」(隻影響視圖的位置)。改變視圖的「框架」大小。 – Costique 2012-02-24 08:21:03