1

使用功能访问信息时,我得到的值不正确。

var screenX:Number = Capabilities.screenResolutionX;
var screenY:Number = Capabilities.screenResolutionY;
var pixelCheck:Number = screenX * screenY;
var pixels:Number = (screenX*screenX) + (screenY*screenY);
var screenSize:Number = Math.sqrt(pixels)/Capabilities.screenDPI;
var screenDpi:Number = Capabilities.screenDPI;

trace("screenX : " + screenX);
trace("screenY : " + screenY);
trace("pixelCheck : " + pixelCheck);
trace("pixels : " + pixels);
trace("screenSize : " + screenSize);
trace("screenDpi : " + screenDpi);

当我在 flex 模拟器上调试它时,对于 iphone 4,我得到以下结果。

screenX : 1280
screenY : 1024
pixelCheck : 1310720
pixels : 2686976
screenSize : 5.028220260069967
screenDpi : 326

屏幕 dpi 是正确的,但由于 iphone 的分辨率为 640 X 960,为什么它显示的值不同。

4

1 回答 1

0

这是预期的行为。Capabilities 类返回正确的值;这是您正在运行它的设备的屏幕分辨率(也不是 iPhone )。

您可以提交错误报告/增强请求。或者在实际设备上进行测试。总的来说,我发现模拟器在测试方面会受到打击或错过。

于 2012-05-18T14:32:31.720 回答