Xamarin.iOS Mask Layer

时间:2016-02-17 20:26:04

标签: xamarin xamarin.ios

我想从图像中剪出四分之一圆。我是用UIBezirPath和CAshapeLAyer做的。 但它不起作用 这是我的代码

UIBezierPath path = new UIBezierPath();
nfloat startAngle = 0;
nfloat endAngle = 90;
nfloat radius = (float) (size.Height/2);
CGPoint center = new CGPoint(size.Width /2, size.Height / 2);

path.MoveTo(center);
path.AddArc(center,radius,startAngle,endAngle,true);
path.AddLineTo(center);
path.ClosePath();
CAShapeLayer maskLayer = new CAShapeLayer();
CGRect cgRect = new CGRect(0, 0, size.Width, size.Height);
maskLayer.Frame = imageHolder.Bounds;
maskLayer.Path = path.CGPath;
maskLayer.BackgroundColor = UIColor.Brown.CGColor;
maskLayer.FillColor = UIColor.Cyan.CGColor;
imageHolder.Layer.Mask = maskLayer;
imageHolder.Layer.MasksToBounds = true;
imageHolder.ClipsToBounds = true;

我不知道为什么它不起作用。 它只显示原始的ImageView。

0 个答案:

没有答案