2012-08-06 176 views
1

我有一個UIView,我畫了一個CGPath並且想繪製一個覆蓋到整個視圖本身上的一個z層,它位於呈現的CGPath之上。在UIView上繪製覆蓋圖

這是如何完成的?我應該使用圖層嗎?我想重複繪製或填充部分視圖,所以我不確定使用某種填充方法會更好。除了繪製新路徑之外,是否有更有效的方式來填充視圖的某些部分?

我想創建類似於進度條的效果,根據值在運行時擴展覆蓋寬度。

回答

2

您可以爲此使用子視圖(或類似的子圖層)。視圖的子視圖將顯示在drawRect:中呈現的內容上方。

如果你能逃脫使用UIImage背景(比方說,一個與resizableImageWithCapInsets:創建),並簡單地改變這一觀點隨着時間的大小,它可能會比drawRect:重繪更有效率。

+0

我已經使用drawRect繪製了視圖,並且希望它覆蓋ontop。 – jarryd 2012-08-06 14:58:57

+0

正確;我在說你應該爲你的覆蓋層使用子視圖,並簡單地調整該子視圖的大小來改變覆蓋層的大小。當你說你想「重複繪製或填充部分視圖」時,我不確定你在說什麼視圖;你能澄清一下你想繪製/改變的時間嗎? – 2012-08-06 15:00:52

+0

沒有必要,延伸它的y積極將是完美的,我可以設置子視圖的背景。謝謝! :) – jarryd 2012-08-06 15:05:14