【发布时间】:2015-08-11 12:07:15
【问题描述】:
从事我的第一个 Ionic 项目。
我对启动画面没有任何问题——我可以使用 CordovaSplashscreen 插件并在相关承诺解决时告诉它 hide();我还可以注释掉隐藏,而是依赖 AutoHideSplashScreen 在 config.xml 中为真,并让启动画面在 SplashScreenDelay 之后自动隐藏。
(我列出了这些确实有效的事情,因此很明显我的问题与数十个 Ionic 和 Cordova/PhoneGap 相关的闪屏问题并不重复。)
我的问题是,无论我尝试什么——ios、android、模拟器、真实设备、是否使用 CordovaSplashscreen 隐藏()、AutoHideSplashScreen 设置为 true、AutoHideSplashScreen 设置为 false 等等。——我不能让初始屏幕在消失时淡出。
无论我使用什么 config.xml 设置、启动屏幕 hide() 调用或不调用、仿真或设备、ios 或 android 的组合,FadeSplashScreen 似乎都没有任何效果。
我当前的 config.xml 设置,虽然这并没有给出我尝试过的这些值的十几个排列的完整描述:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<widget id="com.ionicframework.yourkids381244" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
... other code at same level of hierarchy omitted ...
<preference name="SplashScreen" value="screen"/>
<preference name="AutoHideSplashScreen" value="false"/>
<preference name="auto-hide-splash-screen" value="false"/>
<preference name="ShowSplashScreenSpinner" value="false"/>
<preference name="SplashScreenDelay" value="10000"/>
<preference name="FadeSplashScreen" value="true"/>
<preference name="FadeSplashScreenDuration" value="3.0"/>
... other code at same level of hierarchy omitted ...
</widget>
我的 app.js 路由中的代码执行了 hide()'ing,不过,这似乎不是问题的一部分;它有效,我通过注释掉 hide() 行并将 AutoHideSplashScreen 设置为 false 来确认,这成功地导致启动屏幕永远不会隐藏;但从那个状态开始,我无法隐藏以淡出启动画面,无论是通过取消注释 hide() 行以使用 CordovaSplashscreen 来隐藏,还是将 AutoHideSplashScreen 设置为 true。
.state('app.main', {
url: "/main",
views: {
'menuContent': {
templateUrl: "templates/main.html",
controller: ['$scope', '$timeout', '$ionicGesture',
function($scope, $timeout, $ionicGesture) {
$scope.$on('$ionicView.loaded', function() {
ionic.Platform.ready( function() {
$timeout(function() {
if(navigator && navigator.splashscreen) {
// note that this works fine, except for the fading
navigator.splashscreen.hide();
}
}, 500);
});
});
}],
}
}
})
(期待对此的评论不涉及承诺的解决,这是在其他地方完成的,然后 app.main 被呈现......关键是,隐藏这种方式确实有效,它只是不强>淡出)
有更多尝试的想法吗?
【问题讨论】:
-
你有哪个版本的插件?我已经看到是 2.0 版,他们对 iOS 褪色进行了一些更改。
-
我使用的是 2.0.0,是今天最新的(2015 年 4 月 15 日发布)。感谢您提示我仔细检查。我也在使用 Ionic CLI 1.4.5,现在升级到 1.5.0...
-
这里遇到了同样的问题。离子 CLI 1.5.0。我还尝试了这里的教程:calendee.com/2015/03/03/…,但它仍然没有用。请 Ionic 团队修复它。
标签: cordova ionic-framework ionic splash-screen cordova-plugins