멜팅비의 개발 공부

[iOS-Swift] UIView의 원하는 곳에만 round를 주고싶을 때! 본문

개발 공부/[iOS 개발]

[iOS-Swift] UIView의 원하는 곳에만 round를 주고싶을 때!

멜팅비 2021. 5. 28. 11:32
반응형

iOS에서 UI작업을 하다 보면 상단 모서리에만 radius가 들어간다거나 오른쪽만 radius가 들어가는 등 특정 모서리만 라운드를 주고 싶을 때가 있다.

그럴 때 사용하기 편한 코드를 기록해두려고 한다.

 

extension UIView {
    func roundCorners(corners:UIRectCorner, radius: CGFloat) {
      let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
      let mask = CAShapeLayer()
      mask.path = path.cgPath
      self.layer.mask = mask
    }
}

 

사용법

roundView.roundCorners(corners: [.topLeft, .topRight], radius: 16)

corners에 라운드가 필요한 곳을 넣어주고, radius를 설정해주면 간단하게 round를 처리할 수 있다.

반응형
Comments