2012-03-29 3 views

ответ

4

Плагин не требуется.

Установите ключ AutoHideSplashScreen на номер NO в Cordova.plist, затем после готовности к работе устройства используйте navigator.splashscreen.hide();, чтобы скрыть заставку.

Это может быть, что вы не ждать до deviceready, прежде чем пытаться получить доступ к navigator.splashscreen

редактировать

Как отметил @respectTheCode ниже, а 1,6 это было удалено и кодифицированы на разных платформах, как cordova.exec(null, null, “SplashScreen”, “hide”, [])

+0

Ну, что deviceready не уволили. На самом деле это не стреляет для меня вообще. У меня был тайм-аут, который запустил мое приложение через секунду, чтобы я мог протестировать в браузере, и поэтому я никогда не замечал. – respectTheCode

+3

С версии 1.6 навигатор.splashscreen удален. Вместо этого используйте cordova.exec (null, null, «SplashScreen», «hide», []). – respectTheCode

+2

Начиная с версии 2.0 navigation.splashcreen.hide() работает для меня! – mattwindwer

-1

ОК, я принял совет RespectTheCode и удалил событие готовности устройства из функции onLoad. Это рабочий код. Я размещаю полный код для других, которые учатся:

<script> 
    document.addEventListener("deviceready", onDeviceReady, false); 

    setTimeout(function() { 
     navigator.splashscreen.hide(); 
     }, 1000); 
</script> 

1000 - одна секунда. Не работает менее одной секунды, а 500. Заставка просто зависает.

Это работает для меня. Если бы код мог быть улучшен, не стесняйтесь отвечать на него, и я подниму вас.

Кроме того, PhoneGap/Cordova имеет ошибку, в которой вы должны использовать всплеск изображения в полном размере экрана (768x1024). Следуйте обсуждение здесь: https://issues.apache.org/jira/browse/CB-263

Или здесь: How to stop iOS launch image moving up in Phonegap/Sencha Touch

Смежные вопросы