新版cordova/phonegap启动画面会淡入淡出怎么解决
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新版cordova/phonegap启动画面会淡入淡出怎么解决相关的知识,希望对你有一定的参考价值。
参考技术A 在我们做cordova应用的时候,首页加载需要几秒的时间,这时候如果不加启动画面的话可能会刚启动白屏加上启动画面就会解决这个问题
启动画面插件安装地址
安装完成这个启动画面后,默认会发现有淡入淡出的效果,我们如何配置直接显示启动画面,没有淡入淡出效果呢?
首先找到我们项目下面 res下面的config.xml,然后加入下面两句就可以解决。更多配置参考官方文档
<preference name="FadeSplashScreen" value="false"/> //隐藏淡入淡出
<preference name="SplashScreenDelay" value="5000" /> //设置启动画面事件
<preference name="ShowSplashScreenSpinner" value="false"/> //隐藏启动画面那个laoding图片
在 PhoneGap/Cordova 1.5.0 中显示启动画面
【中文标题】在 PhoneGap/Cordova 1.5.0 中显示启动画面【英文标题】:Showing splash screen in PhoneGap/Cordova 1.5.0 【发布时间】:2012-04-01 21:01:18 【问题描述】:我正在尝试为我的 PhoneGap/Cordova 本机 iOS 应用程序显示初始屏幕。此行为的默认值或布尔值设置为“YES”。我试图让屏幕显示 2 秒钟。目前,它只显示片刻,然后直接进入应用程序。由于我的应用在启动时不会为网络下载任何数据,因此加载速度非常快。
根据此建议,此解决方案适用于某些人。我正在使用最新的 Cordova 1.5.0 版本:http://shazronatadobe.wordpress.com/2011/09/15/ios-phonegap-splash-screen-control/
我已在 Cordova.plist 中将 AutoHideSplashScreen 设置为“否”,并且正在使用以下代码:
function onLoad()
document.addEventListener("deviceready", onDeviceReady, false);
setTimeout(function()
navigator.splashscreen.hide();
, 2000);
我尝试将 setTimeout 函数放入函数中,但无济于事。像这样:
function onLoad()
document.addEventListener("deviceready", onDeviceReady, false);
function hideSplash()
setTimeout(function()
navigator.splashscreen.hide();
, 2000);
然后在 Body 加载时加载 'hideSplash()'。但无济于事。
我的代码有什么问题吗?
【问题讨论】:
我不想问同样的问题两次,但这个解决方案似乎对我不起作用:***.com/questions/9933988/… “设备就绪”正在触发,因为我也在使用它来检查互联网连接。 【参考方案1】:好的,我接受了 RespectTheCode 的建议,并从 onLoad 函数中删除了设备就绪事件。这是工作代码。我正在为正在学习的其他人提供完整的代码:
<script>
document.addEventListener("deviceready", onDeviceReady, false);
setTimeout(function()
navigator.splashscreen.hide();
, 1000);
</script>
对于不知道的人来说,1000 是一秒。将无法工作少于一秒,即 500。启动画面只是挂起。
当我安装并且应用程序正常工作时,这对我有用,但是,当我重新启动设备 (iPad2) 时,启动屏幕像上一个问题(上一段)一样挂起,并且不会进入应用程序。奇怪的错误。
还有其他人经历过这种情况吗?
我正在使用 Xcode 4.3.1 和 Cordova 1.5.0 构建 iOS 5.1
【讨论】:
【参考方案2】:我使用的是 Cordova 2.1.0,现在使用的是 2.2.0。 调用 navigator.splashscreen.hide() 时,启动画面没有消失。 使用以下代码,它起作用了:
private static native void hideSplashScreen() /*-
$wnd.Cordova.exec(null, null, "SplashScreen", "hide", []);
-*/;
希望对你有帮助
【讨论】:
以上是关于新版cordova/phonegap启动画面会淡入淡出怎么解决的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap (cordova) 2.4.0 启动画面显示缩小
在 PhoneGap/Cordova 1.5.0 中显示启动画面
如何在启动时更改 phonegap/cordova 状态栏背景(启动画面)?
PhoneGap/Cordova + iOS7 + XCode 5