Я пытаюсь создать закругленный прямоугольник для UITableViewCell, который я создал в раскадровке. Я использую Swift 2 в Xcode 7. У меня есть два представления в ячейке прототипа, в представлении TopView и Bottom. Я хочу, чтобы topView имел свои верхние угловые раунды, а bottomView - с закругленными углами.Округленный прямоугольник с использованием UIRectCorner в Swift не работает
в awakeFromNib (может пойти куда-нибудь еще лучше позже):
...
self.topView.backgroundColor = UIColor.redColor()
self.bottomView.backgroundColor = UIColor.grayColor()
self.setMaskToView(self.topView, corners:UIRectCorner.TopLeft.union(UIRectCorner.TopRight))
self.setMaskToView(self.bottomView, corners: UIRectCorner.BottomLeft.union(UIRectCorner.BottomRight))
...
В отдельной функции (на основе ответа на другой перепускной пост Stack):
func setMaskToView(view : UIView, corners: UIRectCorner) {
let rounded = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: 10, height: 10))
let mask = CAShapeLayer()
mask.path = rounded.CGPath
view.layer.mask = mask
}
Примечание, я также пытался [ .TopRight, .TopLeft] вместо union(), на основе различных сообщений о переполнении стека. Кажется, ничего ничего не изменит. Также очищен и перезапущен Xcode в отчаянии. Это то, что я получаю:
Если у кого есть какие-либо идеи, что может быть, я был бы признателен.
Спасибо.
увидеть мой ответ здесь: http://stackoverflow.com/a/40222533/2594699 –