Firemonkey应用程序中的完整iPhone X分辨率?

时间:2017-11-15 15:27:32

标签: ios delphi firemonkey iphone-x

如果我尝试在iPhone X上运行一个简单的iOS应用程序(用10.1柏林编写),该应用程序无法使用完整的iPhone X显示尺寸。可以为Delphi / FMX应用程序设置完整的iPhone X分辨率吗?

1 个答案:

答案 0 :(得分:2)

您需要根据此图表包含iPhone X所需的其他2个启动图像:

https://developer.apple.com/ios/human-interface-guidelines/icons-and-images/launch-screen/

此外,您还需要提供自定义的.info.plist,其中包含启动图像的条目(因为IDE不会为您执行此操作),即将其添加到阵列节点以获取UILaunchImages键:

        <dict>
            <key>UILaunchImageSize</key>
            <string>{375, 812}</string>
            <key>UILaunchImageName</key>
            <string>Default-812h</string>
            <key>UILaunchImageMinimumOSVersion</key>
            <string>8.0</string>
            <key>UILaunchImageOrientation</key>
            <string>Portrait</string>
        </dict>
        <dict>
            <key>UILaunchImageSize</key>
            <string>{812, 375}</string>
            <key>UILaunchImageName</key>
            <string>Default-Landscape-812h</string>
            <key>UILaunchImageMinimumOSVersion</key>
            <string>8.0</string>
            <key>UILaunchImageOrientation</key>
            <string>Landscape</string>
        </dict>

您需要将图像添加到项目部署中,并编辑每个图像的远程名称属性以与.info.plist中的条目对齐,例如:

enter image description here

但等等,还有更多!你还需要根据Pimmie的另​​一个答案考虑间距。您可以通过使布局与顶部,底部,左侧和右侧对齐,仅在iPhone X上显示时使用以下内容执行此操作:

uses
  iOSapi.Helpers;

...

if TiOSHelper.MainScreen.bounds.size.height = 812 then
  // iPhoneX

Delphi提供&#34; space&#34;也是一个问题。对于iPhone X可能不需要执行的状态栏(仍在解决此问题)。

对我来说,这个程序适用于柏林和东京,但总而言之:不是微不足道的