gpt4 book ai didi

ios - UIView的shadowpath颜色没有改变

转载 作者:行者123 更新时间:2023-11-30 10:33:29 27 4
gpt4 key购买 nike

我有一个 UIView 并为其设置了一个 shadowPath ,如下所示:

func addShadow() {
let cornerRadius: CGFloat = self.containerView.frame.height/2
self.containerView.layer.shadowPath = UIBezierPath(roundedRect: self.containerView.frame, cornerRadius: cornerRadius).cgPath
self.containerView.layer.shadowRadius = cornerRadius
self.containerView.layer.shadowOffset = .zero
self.containerView.layer.shadowOpacity = 0.2
self.containerView.layer.cornerRadius = cornerRadius
self.containerView.layer.shadowColor = UIColor(named: "whiteColor")?.cgColor
}

这是白色:

enter image description here

现在我的问题是

When I change the appearance of the phone, the shadowPath's color doesn't change automatically. What should I do to make the color dynamic?

最佳答案

所有图层属性不会自动对颜色变化使用react(由于转换为 CGColor)。

相反,当颜色外观发生变化时,对特征集合更改使用react并重新设置属性:

override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
super.traitCollectionDidChange(previousTraitCollection)

if #available(iOS 13, *), self.traitCollection.hasDifferentColorAppearance(comparedTo: previousTraitCollection) {
// re-set your properties here
}
}

关于ios - UIView的shadowpath颜色没有改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58583349/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com