如何在一个UIView上制作两个阴影?

问题描述 投票:0回答:1

大家下午好。告诉我如何在一个视图上制作两种效果。

我尝试通过 CALayer 来完成。但这个方法不行!

// Create UIView.
let testView = UIView()     
testView.backgroundColor = UIColor.gray
testView.layer.borderWidth = 1
testView.translatesAutoresizingMaskIntoConstraints = false

// Create layer with shadow.
let shadowUp = createShadowDown(buttonMenu)

// Add layer with shadow to UIView.
testView.layer.insertSublayer(layerOne, at: 0)

// Method create shadow.
func createShadowUp(_ size: UIView) -> CALayer {
    let layer = CALayer()
    layer.frame = size.bounds
    layer.shadowColor = UIColor.red.cgColor
    layer.shadowOpacity = 1
    layer.shadowRadius = 10
    layer.shadowOffset = CGSize(width: 0, height: 20)
    return layer
}

第二种方法可以,但是你不能制作两个阴影!

// Create UIView.
let testView = UIView()     
testView.backgroundColor = UIColor.gray
testView.layer.borderWidth = 1
testView.translatesAutoresizingMaskIntoConstraints = false

// Create shadow.
createShadowTest(testView))

// Method create shadow.
func createShadowTest(_ view: UIView) {
    view.layer.shadowColor = UIColor.red.cgColor
    view.layer.shadowOpacity = 1
    view.layer.shadowRadius = 10
    view.layer.shadowOffset = CGSize(width: 0, height: 20)
}

一个View加两个阴影真的不行吗?

swift uikit
1个回答
0
投票

为一个 VIView 制作两个阴影。

© www.soinside.com 2019 - 2024. All rights reserved.