UIView透明重绘

时间:2010-07-15 21:40:03

标签: objective-c iphone uiview transparency core-graphics

我正在制作一个iPhone应用程序,其中的粒子在使用Core Graphics绘制的自定义UIView上移动。我希望我的粒子留下痕迹,所以当重新绘制视图时,我希望它用0.8 alpha填充背景。

任何人都知道如何做到这一点?我已经尝试将视图的背景颜色设置为IB中透明的东西,但这没有帮助,它只会使底层视图可见。

简而言之 - 我需要帮助将UIView的清晰颜色设置为透明的颜色。

由于

2 个答案:

答案 0 :(得分:2)

如果您希望视图透明,请检查opaque属性。如果它不透明 - 不会发生透明度(http://developer.apple.com/iphone/library/documentation/uikit/reference/UIView_Class/UIView/UIView.html#//apple_ref/occ/instp/UIView/opaque

你也可以设置一个清晰的颜色作为背景([UIColor clearColor])。

答案 1 :(得分:1)

你不能让你的视图描绘其中的内容。每当调用drawRect时,您必须从头开始绘制视图的全部内容。

您可以改为使用CGBitmapContext进行绘制,只要您愿意,您可以保留它。然后在您的视图中,只需将CGBitmapContext完整地绘制到视图中。

http://developer.apple.com/mac/library/documentation/GraphicsImaging/Reference/CGBitmapContext/Reference/reference.html