Ios UIView对下面的所有视图都不透明
我正在处理一个iOS应用程序,我遇到了以下问题:我有一个Ios UIView对下面的所有视图都不透明,ios,uiview,transparency,alpha,Ios,Uiview,Transparency,Alpha,我正在处理一个iOS应用程序,我遇到了以下问题:我有一个UIView,它的背景颜色为alpha=0.8,但我不希望它对它下面的所有元素都是透明的。我将以下代码添加到其Draw(CGRect)方法中,使其透明: var gctx = UIGraphics.GetCurrentContext(); gctx.AddEllipseInRect(new CGRect(rect.Location, rect.Size)); gctx.SetFillColor(UIColor.FromRGB(255, 25
UIView
,它的背景颜色为alpha=0.8
,但我不希望它对它下面的所有元素都是透明的。我将以下代码添加到其Draw(CGRect)
方法中,使其透明:
var gctx = UIGraphics.GetCurrentContext();
gctx.AddEllipseInRect(new CGRect(rect.Location, rect.Size));
gctx.SetFillColor(UIColor.FromRGB(255, 255, 255).ColorWithAlpha(0.8f).CGColor);
但是,通过这种方式,它可以看穿它下面的所有ui视图。下图说明了我的意思:
大圆圈的α=0.8
,而在它下面的小圆圈的α=1。我想要实现的是,大圆圈后面的小圆部分是不可见的,而大圆圈具有alpha=0.2
,以便对背景渐变略微透明。尝试对小圆使用gc剪辑功能。
您需要将大圆或其反方向设置为剪辑路径并绘制圆
尝试对小圆圈使用gc剪辑功能。 您需要将大圆或其反方向设置为剪辑路径并绘制圆