Я бы очень признателен, если бы кто-нибудь мог сказать мне, почему приведенный ниже код не дает мне внутренней тени или дает мне решение, которое даст внутреннюю тень.Swift Создание внутренней тени на круглом UIView
Мне нужно создать внутреннюю тень на закругленном UIView. Я прошел через множество ответов и нашел способы получить это на обычном квадрате UIViews, но не нашел решения, которое работает на округленное представление. Вместо этого я нахожу решения, подобные приведенным ниже, которые выглядят хорошо для меня, но не создавайте требуемую внутреннюю тень, когда я их реализую. Вот мой экран, это белый вид между наружными синими и внутренними желтыми взглядами, которые я хочу, чтобы добавить тень:
Я подклассы мнения, вот мой Жеребьевка Прямоугольник код:
let innerShadow = CALayer()
// Shadow path (1pt ring around bounds)
let path = UIBezierPath(rect: innerShadow.bounds.insetBy(dx: -1, dy: -1))
let cutout = UIBezierPath(rect: innerShadow.bounds).reversing()
path.append(cutout)
innerShadow.shadowPath = path.cgPath
innerShadow.masksToBounds = true
// Shadow properties
innerShadow.shadowColor = UIColor.darkGray.cgColor
innerShadow.shadowOffset = CGSize(width: 0.0, height: 7.0)
innerShadow.shadowOpacity = 1
innerShadow.shadowRadius = 5
// Add
self.layer.addSublayer(innerShadow)
// Make view round
self.layer.cornerRadius = self.frame.size.width/2
self.layer.masksToBounds = true
Большое спасибо за любую помощь в этом. Пожалуйста, дайте мне знать, если у вас есть вопросы.