我UIView的颜色是黑色,不透明度是0.9或类似的东西.我想要做的是填充UIView黑色部分,但指定的矩形区域不应该变黑.即特定的矩形区域保持清晰的颜色......
任何形式的帮助将不胜感激.
问候,
伊姆兰
您可以进行子类化UIView和覆盖- (void)drawRect:(CGRect)rect
并执行以下操作(未经测试,但我自己使用类似的东西);
- (void)drawRect:(CGRect)rect {
// fill the whole UIView with a color
[[UIColor colorWithRed:1 green:1 blue:1 0.9] setFill];
UIRectFill( rect );
// draw a rect
CGRect rectIntersection = CGRectIntersection(theRectIWantToDrawIn, rect);
[[UIColor clearColor] setFill];
UIRectFill( rectIntersection );
}
Run Code Online (Sandbox Code Playgroud)
上面的代码在某个位置绘制了一个带有模拟clearColor孔的黑色视图.当然,您可以根据自己的喜好改变这种行为.
这很快.
更新:请注意我将UIView设置为我想要将矩形绘制为UIClear颜色(我将其添加到xib并在那里设置这些属性)并取消选中"不透明".这应该让洞透视.
更新2:我的回答是基于这个答案(信用到期):iPhone - 在UIView上绘制透明矩形以显示下面的视图
| 归档时间: |
|
| 查看次数: |
2344 次 |
| 最近记录: |