如何在Delphi XE5下找到解决方案

时间:2013-11-21 14:53:24

标签: ios delphi firemonkey 2d-games delphi-xe5

我开始在Delphi XE5 for iOS下开发游戏。我对Firemonkey的Resolution功能有疑问。

当我打开屏幕并检查iPhone上的分辨率时,我得到320x480。但iPhone 4和5的原生分辨率翻了一番。我在官方Delphi页面上发现FireMonkey正在通过Retina显示器2的“Resolution”重新计算屏幕。

我认为这对于常规应用程序来说很酷,但是当你开始做游戏而你想通过代码操纵图像时会带来奇怪的情况。

我的问题是 - 有没有办法找到实际的分辨率值或至少是实际的设备类型(iPhone,iPad?)

感谢

1 个答案:

答案 0 :(得分:3)

好的,我们找到了答案。

有单位FMX.Platform,提供报价重要数据。

var
 ScreenSvc: IFMXScreenService;
begin
 if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenSvc)) then
begin
   <your code>
 end;
end;

,结果值为:

 ScreenSvc.GetScreenSize.X
 ScreenSvc.GetScreenSize.Y  
 ScreenSvc.GetScreenScale