Mit*_*tri 6 iphone cocoa-touch ios4 retina-display
我想在我的iPhone应用程序中使用不同的图像,具体取决于当前的设备是iPhone 3G,iPhone 4还是iPad.我已尝试获取设备的屏幕分辨率(大小),但对于不同的iPhone,它总是返回320 X 480.
如何确定我正在运行的设备类型,以便我可以提供正确的图像?
我不想获得iPhone OS版本.
Joh*_*ker 10
最有可能没有必要做你正在尝试做的事情,因为iOS内置支持加载适当大小的iPhone(视网膜和视网膜前分辨率)和iPad的图像.
阅读资源编程指南(特别是"在iOS中指定高分辨率图像"和"iOS支持特定于设备的资源"部分)和iOS应用程序编程指南以获取更多信息.
顺便提一下,视网膜前后iPhone/Pod的点分辨率都是320 X 480. Apple区分点大小(分辨率无关)和像素大小,以帮助解决问题.
如果您希望此信息用于为您的分辨率选择合适的图形,那么middaparka的答案就是您正在寻找的.
但是,如果您碰巧需要设备型号或分辨率信息用于不同目的,那么UIDevice和UIScreen可能就是您想要的.
NSString *myDeviceModel = [[UIDevice currentDevice] model];
CGRect myScreenSize = [[UIScreen mainScreen] bounds].size;
Run Code Online (Sandbox Code Playgroud)