为什么 iOS 应用会全屏放大?
why is the whole screen zooming-in on iOS app?
我正在开发 iOS(8 和 9)应用程序。我正在使用 phonegap build 来打包所有东西,并使用 phonegap 桌面和 phonegap 开发人员应用程序来做一些测试。我的 UI 已经设计好,在使用 phonegap 开发者应用程序以及移动 safari 时一切看起来都很好,但是当我将它移植到我的设备时,UI 看起来很模糊,包括字体、边框、div , 甚至是状态栏和键盘。
这是正确的视图,使用 Phonegap 应用程序和移动 safari:
Good
这是安装后的实际视图:
Bad quality
我已经设置了视口和比例,但它们不会影响状态栏和键盘。
这是我的 XML
<preference name="phonegap-version" value="3.7.0" />
<preference name="orientation" value="default" />
<platform name="ios">
<preference name="Orientation" value="all" />
</platform>
<preference name="fullscreen" value="true" />
<preference name="target-device" value="universal" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="true" />
<preference name="ios-statusbarstyle" value="lightcontent" />
<preference name="android-windowSoftInputMode" value="adjustPan" />
<preference name="ShowSplashScreenSpinner" value="false" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="false" />
<preference name="auto-hide-splash-screen" value="false" />
<preference name="SplashScreenDelay" value="5000" />
<preference name="EnableViewportScale" value="true" />
<preference name="TopActivityIndicator" value="gray" />
<preference name="KeyboardDisplayRequiresUserAction" value="false" />
<preference name="HideKeyboardFormAccessoryBar" value="true" />
<preference name="SuppressesIncrementalRendering" value="true" />
<preference name="android-minSdkVersion" value="18" />
<preference name="android-installLocation" value="internalOnly" />
<preference name="ErrorUrl" value="" />
<preference name="BackgroundColor" value="0x000000" />
<preference name="KeepRunning" value="true" />
<preference name="DisallowOverscroll" value="true" />
<preference name="LoadingDialog" value="" />
<preference name="LoadUrlTimeoutValue" value="20000" />
<preference name="disable-cursor" value="true" />
<gap:config-file platform="ios" parent="UIViewControllerBasedStatusBarAppearance" overwrite="true">
<false/>
</gap:config-file>
<content src="index.html" />
<gap:platform name="ios" />
<gap:platform name="android" />
我不得不提一下,使用较新版本的 CLI 并不能解决问题。
这是我的元标记
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
Phonegap 桌面的示例应用程序也显示了此行为。
您对可能发生的事情有任何想法吗?
我发现了问题。事实证明,自 iOS 9 起,启动画面要求发生了变化。因此,在创建 .ipa 时,缺少一些文件(iPhone 6 和 6+ 的闪屏)。
将下一个 xml 代码添加到我的 config.xml
<gap:splash src="Splash/Default-667h@2x.png" gap:platform="ios" width="750" height="1334" />
<gap:splash src="Splash/Default-Portrait-736h@3x.png" gap:platform="ios" width="1242" height="2208" />
<gap:splash src="Splash/Default-Landscape-736h@3x.png" gap:platform="ios" width="2208" height="1242" />
和相应的文件成功了。
现在看来视野真的很清晰。
希望这对某人有所帮助。
我正在开发 iOS(8 和 9)应用程序。我正在使用 phonegap build 来打包所有东西,并使用 phonegap 桌面和 phonegap 开发人员应用程序来做一些测试。我的 UI 已经设计好,在使用 phonegap 开发者应用程序以及移动 safari 时一切看起来都很好,但是当我将它移植到我的设备时,UI 看起来很模糊,包括字体、边框、div , 甚至是状态栏和键盘。
这是正确的视图,使用 Phonegap 应用程序和移动 safari: Good
这是安装后的实际视图: Bad quality
我已经设置了视口和比例,但它们不会影响状态栏和键盘。
这是我的 XML
<preference name="phonegap-version" value="3.7.0" />
<preference name="orientation" value="default" />
<platform name="ios">
<preference name="Orientation" value="all" />
</platform>
<preference name="fullscreen" value="true" />
<preference name="target-device" value="universal" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="true" />
<preference name="ios-statusbarstyle" value="lightcontent" />
<preference name="android-windowSoftInputMode" value="adjustPan" />
<preference name="ShowSplashScreenSpinner" value="false" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="false" />
<preference name="auto-hide-splash-screen" value="false" />
<preference name="SplashScreenDelay" value="5000" />
<preference name="EnableViewportScale" value="true" />
<preference name="TopActivityIndicator" value="gray" />
<preference name="KeyboardDisplayRequiresUserAction" value="false" />
<preference name="HideKeyboardFormAccessoryBar" value="true" />
<preference name="SuppressesIncrementalRendering" value="true" />
<preference name="android-minSdkVersion" value="18" />
<preference name="android-installLocation" value="internalOnly" />
<preference name="ErrorUrl" value="" />
<preference name="BackgroundColor" value="0x000000" />
<preference name="KeepRunning" value="true" />
<preference name="DisallowOverscroll" value="true" />
<preference name="LoadingDialog" value="" />
<preference name="LoadUrlTimeoutValue" value="20000" />
<preference name="disable-cursor" value="true" />
<gap:config-file platform="ios" parent="UIViewControllerBasedStatusBarAppearance" overwrite="true">
<false/>
</gap:config-file>
<content src="index.html" />
<gap:platform name="ios" />
<gap:platform name="android" />
我不得不提一下,使用较新版本的 CLI 并不能解决问题。
这是我的元标记
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
Phonegap 桌面的示例应用程序也显示了此行为。
您对可能发生的事情有任何想法吗?
我发现了问题。事实证明,自 iOS 9 起,启动画面要求发生了变化。因此,在创建 .ipa 时,缺少一些文件(iPhone 6 和 6+ 的闪屏)。
将下一个 xml 代码添加到我的 config.xml
<gap:splash src="Splash/Default-667h@2x.png" gap:platform="ios" width="750" height="1334" />
<gap:splash src="Splash/Default-Portrait-736h@3x.png" gap:platform="ios" width="1242" height="2208" />
<gap:splash src="Splash/Default-Landscape-736h@3x.png" gap:platform="ios" width="2208" height="1242" />
和相应的文件成功了。 现在看来视野真的很清晰。
希望这对某人有所帮助。