2012-04-18 63 views
0

我在運行時創建一個視圖,並使用它的drawRect:來繪製一個圖。在下一步中,我將一個圖像內容的子圖層添加到視圖圖層,然後顯示它。有用。但視圖中的數字仍然顯示在圖像下方。在創建子圖層之前,使用view.layer.contents = nil;,視圖上的圖被刪除。但我需要再次展示它。用[view setNeedsDisplay];(呼叫drawRect:)我可以再畫一遍。UIView:隱藏繪圖並再次顯示

是否有任何(更簡單)的方法來隱藏(或覆蓋)此圖並再次顯示(不刪除和重繪它)?謝謝。

編輯: 我可以這樣做:layer.backgroundColor = [UIColor blackColor].CGColor;該圖被覆蓋。但backgroundColor必須是透明的。非常感謝其他想法。

回答

0

您可以使用:

view.layer.hidden = YES; 

如果你只想隱藏和顯示一個子層,可以保持一個參考的保持到底層,或通過查找view.layer.sublayers找到它。

+0

謝謝。但是如果視圖圖層隱藏,我添加的子圖層也會隱藏。 – suyama 2012-04-19 17:38:54

+0

你可以找到子圖層,然後調用sublayer.hidden = YES; – 2012-04-20 09:47:06

相關問題