iPhoneの解像度を判定する
UIScreenクラスを使用:
画面の高さとスケールを取得し、特定の高さとスケールの組み合わせに基づいて、iPhoneの解像度を判定する。
let screenWidth = UIScreen.main.bounds.size.width
let screenHeight = UIScreen.main.bounds.size.height
let screenScale = UIScreen.main.scale
if screenHeight == 480 && screenScale == 2 {
// iPhone 4, 4s
} else if screenHeight == 568 && screenScale == 2 {
// iPhone 5, 5s, SE (1st generation)
} else if screenHeight == 568 && screenScale == 3 {
// iPhone SE (2nd generation)
} else if screenHeight == 667 && screenScale == 2 {
// iPhone 6, 6s, 7, 8, SE (2nd generation)
} else if screenHeight == 667 && screenScale == 3 {
// iPhone 6 Plus, 6s Plus, 7 Plus, 8 Plus
} else if screenHeight == 736 && screenScale == 3 {
// iPhone 6s Plus, 7 Plus, 8 Plus
} else if screenHeight == 812 && screenScale == 3 {
// iPhone X, XS, 11 Pro
} else if screenHeight == 896 && screenScale == 2 {
// iPhone XR, 11
} else if screenHeight == 896 && screenScale == 3 {
// iPhone XS Max, 11 Pro Max
} else if screenHeight == 926 && screenScale == 3 {
// iPhone 12, 12 Pro
} else if screenHeight == 844 && screenScale == 3 {
// iPhone 12 Mini
} else if screenHeight == 1170 && screenScale == 3 {
// iPhone 12 Pro Max
}