如何在 Xamarin.iOS 中向 UIView 添加阴影?

巴林特福多

我在 Swift 中找到了这个链接:What's the best way to add a drop shadow to my UIView

但是,当我将解决方案适应 Xamarin 时,不会出现阴影。

public override void ViewDidLayoutSubviews()
{
    base.ViewDidLayoutSubviews();

    UIBezierPath path = new UIBezierPath();
    PreviousButton.Layer.MasksToBounds = false;
    PreviousButton.Layer.ShadowColor = UIColor.Gray.CGColor;
    PreviousButton.Layer.ShadowOffset = new CoreGraphics.CGSize(0f, 7f);
    PreviousButton.Layer.ShadowOpacity = 1;
    PreviousButton.Layer.ShadowPath = path.CGPath;
}

我正在使用自动布局。

卢卡斯张

原因:

您似乎忘记设置路径Rect

解决方案1:

你可以直接设置按钮的阴影

public override void ViewDidLayoutSubviews()
{
    base.ViewDidLayoutSubviews();

    PreviousButton.Layer.MasksToBounds = false;
    PreviousButton.Layer.ShadowColor = UIColor.Gray.CGColor;
    PreviousButton.Layer.ShadowOffset = new CoreGraphics.CGSize(0f, 7f);
    PreviousButton.Layer.ShadowOpacity = 1;   
}

解决方案 2:如果您确实想使用 BezierPath ,请设置它的 rect 。

public override void ViewDidLayoutSubviews()
{
    base.ViewDidLayoutSubviews();
    UIBezierPath path = UIBezierPath.FromRect(PreviousButton.Bounds);
    PreviousButton.Layer.MasksToBounds = false;
    PreviousButton.Layer.ShadowColor = UIColor.Gray.CGColor;
    PreviousButton.Layer.ShadowOffset = new CoreGraphics.CGSize(0f, 7f);
    PreviousButton.Layer.ShadowOpacity = 1;
    PreviousButton.Layer.ShadowPath = path.CGPath;   
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

iOS:如何在4面(顶部,右侧,底部和左侧)为UIView制作阴影

如何在iOS Swift中向图像添加文本?

如何为圆形UIImageView或UIView添加阴影?

Sprite Kit iOS 7-如何向SKSpriteNode添加阴影?

iOS:如何在UIView上添加阴影和笔触阴影?

如何在Xamarin iOS SQLite中添加SQLiteOpenFlags.FullMutex标志

如何在Xamarin中的iOS网格的顶部和底部添加边框?

如何在Xamarin Forms中向文本单元添加图标

如果还有另一个UIView,如何在UIView上添加阴影

iOS向UIButton添加阴影

如何在Xamarin iOS中绘制文本?

xamarin Ios将UIView添加到ContainerView

如何在Xamarin形式的android和ios中的状态栏下方添加阴影?

如何在CSS中向图像添加内部阴影

向阴影已被UIBezierPath更改的UIView添加阴影

如何在Flutter中向ClipOval添加阴影?

如何向带有圆角的UIView添加内部阴影

如何从xamarin.ios中的TouchUpInside函数显示UIView?

如何在** spriteKit **中添加UIView?

如何在Xamarin中向iOS8兼容版本添加iOS7支持和iOS7支持

如何在GMSMarker中添加阴影?

iOS:如何在“ tabbar”中添加阴影?

在UIView中添加触摸-Xamarin

如何从Xamarin中的UIView删除子级?

如何在 Xamarin.iOS 的 FSCalendar 中添加事件

如何在游戏环境中添加阴影

如何向被路径遮罩的视图添加阴影

Xamarin 形成 FlowListView iOS - 如何确保 UIView ViewRenderer 中每个元素的 FlowItemDisappearing / FlowItemAppearing

如何在 addSubview 中添加类 UIView