iOS (기능)
[SWIFT] 기기별 해상도(픽셀) 및 인치 구하기
겸손할 겸
2021. 4. 6. 15:40
[개요]
기본적으로 기기별의 사이즈를 구할때는 UIScreen.main.bounds로 구할 수 있으나, 레티나 디스플레이가 나오면서 각각의 기기에 따라 scale이란 변수가 추가되어, 실제 픽셀의 개수를 의미하는 해상도를 구할 수 있다.
또한, 덧붙여 현재 기기가 몇 인치인지 확인하는 방법또한 소개한다.
스택 오버플로에서 찾았는데, 링크를 따로 적어두지 못했다.
[코드]
let screenBounds = UIScreen.main.bounds
let screenScale = UIScreen.main.scale
let screenSize = CGSize(width: screenBounds.size.width * screenScale, height: screenBounds.size.height * screenScale)
let ppi = screenScale * (UIDevice.current.userInterfaceIdiom == .pad ? 132 : 163)
let horizontal = screenSize.width / ppi
let vertical = screenSize.height / ppi
let diagonal = sqrt(pow(horizontal, 2) + pow(vertical, 2))
screenBounds : 화면크기(pt)
screenSize : 화면해상도
diagonal : 인치