IOS 如何获取ppi

news/2024/10/23 5:37:35/

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

  屏幕尺寸等于分辨率吗?如果你说是,那我在问,iPadAir 和 iPadmini3 分辨率一样吗?那尺寸呢?

  OpenGL绘制地图要依据不同得ppi做适配,UIScreen 和UIDevice这两个类中并没有发现任何关于ppi接口的信息。   而计算公式又需要知道屏幕尺寸:


//    float w = [UIScreen mainScreen].bounds.size.width;//    float h = [UIScreen mainScreen].bounds.size.height;//    dpi = sqrt( w*w + h*h ) / 屏幕尺寸 ;


    记得当时在两个群里问如何获取屏幕尺寸的时候,被人一顿喷。ios开发连这个都不知道,甚是悲伤,咱只好掩面继续百度,google。

    在iPhone 6 出来之前iPhone和iPod的ppi都是326。

    iPad 的就比较特殊 iPadmini 是 163 *2 其他的是 132 * 2 乘2是代表是否为R屏;

   如果能区分是不是mimi就能解决问题,现在的问题就是变成如何获取ios设备硬件信息。继续换关键字百度,google;


if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {dpi = 163 * scale;} else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {if (is iPad mimi) {dpi = 163 * scale;} else {dpi = 132 * scale;}} else {dpi = 163 * scale;}


  最后找到一段代码通过获取设备的硬件信息,和官网上得型号做匹对:


-  (NSString*) machine
{struct utsname systemInfo;uname(&systemInfo);    NSString* code = [NSString stringWithCString:systemInfo.machineencoding:NSUTF8StringEncoding];static NSDictionary* deviceNamesByCode = nil;if (!deviceNamesByCode) {deviceNamesByCode = @{@"i386"      :@"Simulator",@"iPod1,1"   :@"iPod Touch",@"iPod2,1"   :@"iPod Touch",@"iPod3,1"   :@"iPod Touch",@"iPod4,1"   :@"iPod Touch",@"iPhone1,1" :@"iPhone",@"iPhone1,2" :@"iPhone",@"iPhone2,1" :@"iPhone",@"iPad1,1"   :@"iPad",@"iPad2,1"   :@"iPad 2",@"iPad3,1"   :@"iPad",@"iPhone3,1" :@"iPhone 4",@"iPhone4,1" :@"iPhone 4S",@"iPhone5,1" :@"iPhone 5",@"iPhone5,2" :@"iPhone 5",@"iPad3,4"   :@"iPad",@"iPad2,5"   :@"iPad Mini",@"iPhone5,3" :@"iPhone 5c",@"iPhone5,4" :@"iPhone 5c",@"iPhone6,1" :@"iPhone 5s",@"iPhone6,2" :@"iPhone 5s",@"iPad4,1"   :@"iPad Air",@"iPad4,2"   :@"iPad Air",@"iPad2,5"   :@"iPad Mini",@"iPad2,6"   :@"iPad Mini" ,@"iPad2,7"   :@"iPad Mini",@"iPad4,4"   :@"iPad Mini",@"iPad4,5"   :@"iPad Mini" ,@"iPad4,6"   :@"iPad Mini",@"iPad4,7"   :@"iPad Mini",@"iPad4,8"   :@"iPad Mini",@"iPad4,9"   :@"iPad Mini",@"iPhone7,1" :@"iPhone 6 Plus",       // Phone 6 Plus@"iPhone7,2" :@"iPhone 6",       // Phone 6 Plus};}NSString* deviceName = [deviceNamesByCode objectForKey:code];return deviceName;
}

  




转载于:https://my.oschina.net/252072599/blog/375869


http://www.ppmy.cn/news/353891.html

相关文章

屏幕色彩与分辨率区别,PPI的概念,IPS屏与TFT屏

转自:http://blog.csdn.net/jbb0523/article/details/7706903 题目:【整理】屏幕色彩与分辨率区别,PPI的概念,IPS屏与TFT屏 1)屏幕色彩与分辨率区别 我们在这里所指的屏幕色彩实质上即为色阶的概念。色阶是表示手机液晶…

ppi 各代iphone_iphone型号对比

展开全部 1、第一代636f70793231313335323631343130323136353331333433646363iPhone于2007年1月9日由苹果公司前首席执行官史蒂夫乔布斯发布,并在2007年6月29日正式发售。 2、第二代iPhone3G于2008年6月10日由美国苹果公司的掌门人史蒂夫乔布斯在苹果全球开发者大会…

DPI 和 PPI 是什么?

前言:虽然自己已经看过很多关于屏幕相关参数的文章了,自己也在sg上面写过相关的文章。今天看到的这篇文章,作者言简意赅,文笔真的比我强的不知道那里去了,三三两两几句话,就把问题解释的清清楚楚,这么好的文章,赶紧收藏起来。 1. DPI 和 PPI 是什么 DPI 是英文 Dots(点…

Android dpi dp ppi概念

转自: http://www.jianshu.com/p/913943d25829 Android的碎片化已经被喷了好多年,随着国内手机厂商的崛起,碎片化也越来越严重,根据OpenSignal的最新调查,2014年市面上有18796种不同的Android设备,作为开发…

Android开发中dpi和ppi的理解

一,澄清一些误区 1.1概念 dpi是dot per inch,每英寸多少点,针对的是印刷页即打印到纸上或者应用到ui切的图片中; ppi是 Pixel per inch,每英寸像素数,针对的是手机屏幕; 1.2误区 网上有dpi…

Android dp px ppi pt等概念的理解

做Android开发过程中,总会用到px、dp、pt等概念,下面对它们代表的意义以及互相之间的关系做简单的介绍。 目录 1、px 2、ppi 3、pt 4、dp 5、Android获取屏幕状态信息 1、px 像素 就是一个颜色点,一个像素点,最小的单位。不同…

颜色的前世今生19·外传之PPI、LPI、DPI疑难问题解答

专门开一篇,解答以下若干问题: 问题1:为什么电脑显示的标准是72PPI?而印刷品的标准是150LPI?忽略单位的不同,单看数值,为啥差了这么多?! 问题2:现在的手机PPI…

android 360 ppi,360特供 vs 小米手机性能大比拼!

标签:小米手机(89) 盛夏来临,与炎热的天气保持同样热度的,是360即将发售的特供手机。6月12日,360第二款特供机AK47(阿卡47)揭开面纱,凭借高配置和1699元的低价格,吸引了足够的眼球。今天,小编率…