gpt4 book ai didi

iphone - 在iphone中获取屏幕分辨率

转载 作者:行者123 更新时间:2023-12-01 17:17:32 25 4
gpt4 key购买 nike

嗨,我需要获取屏幕宽度和高度。
我用过这种方式

UIWindow* window = [UIApplication sharedApplication].keyWindow;
NSLog(@"%f",window.frame.size.width);
NSLog(@"%f",window.frame.size.height);

问题是我有一部 iPhone 4,但分辨率显示为 480x320,这是不正确的......

最佳答案

float scaleFactor = [[UIScreen mainScreen] scale];
CGRect screen = [[UIScreen mainScreen] bounds];
CGFloat widthInPixel = screen.size.width * scaleFactor;
CGFloat heightInPixel = screen.size.height * scaleFactor;

关于 480x320 的屏幕分辨率,这绝对是正确的,因为这为您提供了逻辑大小,或者您可以将大小以点表示为 480 点 x 320 点。

点和像素是有区别的。 Pixel是显示的最小单位。

其中 Point是像素的集合。

iPhone 4 1 点 = 2 像素
iPhone 3GS 1 点 = 1 像素

请引用 docs for scale and bounds .

bounds :包含屏幕的边界矩形,以点为单位。
scale :该值反射(reflect)了从默认逻辑坐标空间转换到该屏幕的设备坐标空间所需的比例因子。默认逻辑坐标空间使用点进行测量,其中一个点大约等于 1/160 英寸。如果设备的屏幕具有相当相似的像素密度,则比例因子通常设置为 1.0,以便一个点映射到一个像素。但是,具有显着不同像素密度的屏幕可能会将此属性设置为更高的值。

关于iphone - 在iphone中获取屏幕分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14003955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com