Skip to content

Instantly share code, notes, and snippets.

@huntercmeyer
Created July 3, 2021 22:42
Show Gist options
  • Save huntercmeyer/487a0ddbcf97931603a6846dd3451b3f to your computer and use it in GitHub Desktop.
Save huntercmeyer/487a0ddbcf97931603a6846dd3451b3f to your computer and use it in GitHub Desktop.
Type-safe iPhone Preview Device Names
import SwiftUI
extension PreviewDevice {
// MARK: iPhone
static let iPhone4s: PreviewDevice = "iPhone 4s"
static let iPhone5: PreviewDevice = "iPhone 5"
static let iPhone5s: PreviewDevice = "iPhone 5s"
static let iPhone6: PreviewDevice = "iPhone 6"
static let iPhone6s: PreviewDevice = "iPhone 6s"
static let iPhone6sPlus: PreviewDevice = "iPhone 6s Plus"
static let iPhoneSE1: PreviewDevice = "iPhone SE (1st generation)"
static let iPhone7: PreviewDevice = "iPhone 7"
static let iPhone7Plus: PreviewDevice = "iPhone 7 Plus"
static let iPhone8: PreviewDevice = "iPhone 8"
static let iPhone8Plus: PreviewDevice = "iPhone 8 Plus"
static let iPhoneX: PreviewDevice = "iPhone X"
static let iPhoneXs: PreviewDevice = "iPhone Xs"
static let iPhoneXsMax: PreviewDevice = "iPhone Xs Max"
static let iPhoneXR: PreviewDevice = "iPhone XR"
static let iPhone11: PreviewDevice = "iPhone 11"
static let iPhone11Pro: PreviewDevice = "iPhone 11 Pro"
static let iPhone11ProMax: PreviewDevice = "iPhone 11 Pro Max"
static let iPhoneSE2: PreviewDevice = "iPhone SE (2nd generation)"
static let iPhone12mini: PreviewDevice = "iPhone 12 mini"
static let iPhone12: PreviewDevice = "iPhone 12"
static let iPhone12Pro: PreviewDevice = "iPhone 12 Pro"
static let iPhone12ProMax: PreviewDevice = "iPhone 12 Pro Max"
// MARK: iPod
// MARK: iPad
// MARK: Apple TV
// MARK: Apple Watch
}
@huntercmeyer
Copy link
Author

TODO: Include the rest of the available devices from the command-line tool xcrun simctl list devicetypes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment