Я написал этот класс пользовательских кнопок
class RoundedButton: UIButton {
override func awakeFromNib() {
layer.cornerRadius = 5
layer.shadowColor = UIColor.black.cgColor
layer.shadowOffset = CGSize(width: 0.0, height: 0.0)
layer.shadowOpacity = 0.2
layer.shadowRadius = 1.0
layer.masksToBounds = false
layer.shadowPath = UIBezierPath(roundedRect: bounds, cornerRadius: 5).cgPath
layer.contents = center
layer.shouldRasterize = true
layer.rasterizationScale = UIScreen.main.scale
}
}
На моем iPhone X все идеально подходит

Но когда я использую устройство с меньшим экраном, тень не масштабируется правильно в соответствии с размером кнопки.

Есть проблема с самим классом кнопки или это проблема ограничений? Я не могу найти решение.