我與this guy有同樣的問題,並且提供的解決方案無法解決它(也不清楚它在另一個SO問題中解決了它)。如何在drawRect中縮放自定義繪圖:
當您更改.frame
大小的UIView的,你沒有改變默認.contentMode
,那麼可以肯定的是應該用的UIView的大小規模在drawRect
(石英路徑)的自定義繪製?我的不是。現在我可以撥打setNeedsDisplay
並重新繪製,但我正在尋找可以製作動畫的縮放。這可能嗎?
相反,對我而言,發生的事情是Quartz繪圖只是裁剪,但保持其大小。我試過直接設置contentMode
以及clipsToBounds
和其他實驗,但是無論我嘗試什麼,Quartz都不會自動縮放。
我已經下載了您的樣品,但模擬器選項不可用它爲我在Xcode,任何想法,爲什麼?我注意到你在動畫之後是setNeedsDisplay。在做這件事之前它還沒有擴展,或者你正在做這個重畫,以便在動畫之後做出更好的解析? – johnbakers 2012-04-11 05:54:03
呃,這很奇怪。我在Xcode 4.3.2中使用5.1模擬器。您可以創建一個新的ipad項目並將其拖入..和它在動畫中上下拖動。如果你註釋掉了setNeedsDisplay調用,它的停留按照框架設置放大或縮小,但是如果它被放大了,它就會變得模糊和不穩定。 – davehayden 2012-04-11 06:07:53
感謝您的幫助。我的問題似乎是我在setNeedsDisplay完成之前設置了自定義視圖的框架,或者其他東西。不確定。我嘗試了一段時間,以確保視圖在縮放之前初始化,並確保它的工作。 – johnbakers 2012-04-11 06:13:02