반응형
Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다.
extension UIView {
func asImage() -> UIImage {
let renderer = UIGraphicsImageRenderer(bounds: bounds)
return renderer.image { rendererContext in
layer.render(in: rendererContext.cgContext)
}
}
}
아이폰 13환경에서 이미지 600장 이상 변환 시 메모리 부족으로 Cannot allocate memory 오류 발생
extension UIView {
func asImage2() -> UIImage {
UIGraphicsBeginImageContext(self.bounds.size)
self.drawHierarchy(in: self.bounds, afterScreenUpdates: true)
var image: UIImage? = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image!
}
}
두번째 이미지 렌더링 방법으로 오류 해결
반응형
'iOS > 코드조각' 카테고리의 다른 글
[iOS, Swift] 두개 이상의 뷰에 tapGesture 추가하기 (0) | 2022.06.22 |
---|---|
[iOS, Swift] UIColor hex값 사용하기(extension) (0) | 2022.06.22 |
[iOS, Swift] UIImage을 파일로 저장하기 UIImage to File (0) | 2022.06.22 |
[iOS, Swift] 코드로 버튼에 이벤트 넣기(UIKit, selector) (0) | 2022.06.19 |
[iOS, Swift] DLRadioButton 이미지, 타이틀 사이 거리 늘리기 (0) | 2022.06.16 |