如何在iOS的xamarin Forms Frame中设置虚线边框颜色?

时间:2018-07-02 04:24:07

标签: ios xamarin xamarin.forms xamarin.ios

我正在使用Xamarin.Forms for iOS做一个应用程序,因此我需要设计如下所示的图像。

enter image description here

要实现此设计,我使用了框架并为其添加了边框颜色。但是我无法获得上图中指定的虚线边框。我正在尝试通过自定义渲染器来实现这一点。任何人都可以请帮助我或指导我获得图像中的确切设计。

这对我来说是一个不幸的帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

您可以扩展Frame Renderer并添加破折号图案

public class CustomFrame : FrameRenderer
{
    public override void LayoutSubviews()
    {
        base.LayoutSubviews();

        CAShapeLayer viewBorder = new CAShapeLayer();
        viewBorder.StrokeColor = UIColor.Red.CGColor;
        viewBorder.FillColor = null;
        viewBorder.LineDashPattern = new NSNumber[] { new NSNumber(5), new NSNumber(2) };
        viewBorder.Frame = NativeView.Bounds;
        viewBorder.Path = UIBezierPath.FromRect(NativeView.Bounds).CGPath;
        Layer.AddSublayer(viewBorder);

        // If you don't want the shadow effect
        Element.HasShadow = false;
    }
}