본문 바로가기
iOS/예제

[iOS 예제] UIView에 원형으로 shadow 넣기

by Sky Titan 2021. 12. 7.
728x90

※ 중요!

shadowOpacity값은 무조건 설정해야한다. 안 그러면 그림자가 보이지 않는다.

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var circleView: UIView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        setUpCircleView()
        
        //그림자 세팅
        setCircleViewShadow()
    }
    
    private func setCircleViewShadow() {
        circleView.layer.masksToBounds = false
        circleView.layer.shadowColor = UIColor.black.cgColor //그림자 색깔 : 검정색
        circleView.layer.shadowOpacity = 0.4 // 그림자 투명도 : 0~1, 0에 가까울 수록 투명해짐
        circleView.layer.shadowOffset = CGSize(width: 0, height: 5) // 그림자 위치 이동 : 밑으로 5 point 이동
        circleView.layer.shadowRadius = 5 // 그림자 굵기
        circleView.layer.shadowPath = UIBezierPath(arcCenter: CGPoint(x: circleView.bounds.width / 2, y: circleView.bounds.height / 2), radius: circleView.bounds.width / 2, startAngle: 0, endAngle: 2 * .pi, clockwise: true).cgPath //그림자 모양 : 그림자와 동일한 크기의 원형
    }
    
    private func setUpCircleView() {
        circleView.layer.cornerRadius = circleView.bounds.width / 2
        circleView.backgroundColor = .red
    }
 
}

728x90

댓글