[swift] Swift Core Graphics로 그림자 효과 그리기
그림자 효과는 UI 요소에 깊이와 형태를 부여하여 사용자에게 시각적인 효과를 주는 데에 유용합니다. Swift의 Core Graphics 프레임워크를 사용하면 그림자 효과를 자유롭게 그릴 수 있습니다.
그림자 효과 그리기
Core Graphics를 사용하여 UIView의 layer에 그림자를 추가할 수 있습니다. 먼저, UIView의 layer 속성을 사용하여 CGContext를 가져옵니다.
import UIKit
class ShadowView: UIView {
override func draw(_ rect: CGRect) {
if let context = UIGraphicsGetCurrentContext() {
context.setShadow(offset: CGSize(width: 5, height: 5), blur: 5)
}
}
}
위의 코드에서는 ShadowView 클래스를 만들고 draw(_:) 메서드를 오버라이드하여 CGContext를 가져온 후 setShadow 메서드를 사용하여 그림자를 추가하고 있습니다.
그림자 속성 설정
setShadow 메서드를 사용하여 그림자를 추가하기 전에 다양한 속성을 설정할 수 있습니다.
context.setShadow(offset: CGSize(width: 5, height: 5), blur: 5, color: UIColor.gray.cgColor)
위의 코드에서는 그림자의 offset, blur(흐림 정도) 및 color를 설정하고 있습니다.
그림자가 있는 뷰 사용하기
그림자가 있는 뷰를 사용하려면 해당 뷰를 콘테이너 뷰의 하위 뷰로 추가합니다.
let shadowView = ShadowView(frame: CGRect(x: 50, y: 50, width: 200, height: 200))
containerView.addSubview(shadowView)
마무리
Swift Core Graphics를 사용하여 그림자 효과를 그리는 방법에 대해 알아보았습니다. 그림자의 오프셋, 흐림 정도, 색상 등을 조절하여 원하는 시각적 효과를 얻을 수 있습니다.
참고 문헌: