在下图中,我有两种阴影。

快速地,我使用了以下功能:

func applyShadow(view: UIView){
    view.layer.shadowColor = UIColor.blackColor().CGColor
    view.layer.shadowOffset = CGSizeMake(0, 1)
    view.layer.shadowOpacity = 0.5
    view.layer.shadowRadius = 10.0
    view.clipsToBounds = false
    view.layer.masksToBounds = false
}

将阴影应用于图像视图中的图像。

如何修改applyShadow函数以使iOS阴影与Web的效果匹配?

我正在使用.png文件,但是如果我不得不转换文件格式,那将不会做太多的工作。

ios - 特殊投影:Swift 2-LMLPHP

最佳答案

在这里,只需将 view.layer.shadowOffset 视为二维坐标系的第四象限。因此,如果该值为 CGSizeMake(0,0),则阴影将平均分布在所有侧面。

现在 view.layer.shadowRadius 只是阴影的半径或范围。通过更改其值,阴影长度将更改。

view.layer.shadowOpacity 将更改阴影的暗度。其值从0变为1。

假设我们将 shadowOffset设置为CGSizeMake(5,0) shadowRadius设置为小于5 的东西,那么阴影将移动到对象的右侧,而在另一侧将没有任何阴影。假设值为 CGSizeMake(0,5),阴影将在对象的底部,即它将向下移动5个点,并且在另一侧将没有任何阴影。因此,如果value为 CGSizeMake(5,5),则阴影将沿左下方向移动5个点。

我认为您对此有了更好的了解。因此,当回到您的问题时,我认为这会起作用:

func applyShadow(view: UIView){
    view.layer.shadowColor = UIColor.blackColor().CGColor
    view.layer.shadowOffset = CGSizeMake(8, 12)
    view.layer.shadowOpacity = 0.4
    view.layer.shadowRadius = 5.0
}

关于ios - 特殊投影:Swift 2,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41388930/

10-14 23:39