2011-09-20 12 views
11

¿Es posible agregar pantallas de bienvenida para aplicaciones de Android y iOS Phonegap? Traté de agregar .gif animado como archivo de pantalla splash para Android pero no funciona. Es decir. no hay animación, lo único que puedo ver es el primer fotograma de .gif.Pantalla de presentación animada con Phonegap

¿Y también hay una manera de agregar texto dinámico en algún lugar de la pantalla de bienvenida? En realidad, esto es lo que quiero. Y usar .gif es solo mi suposición, ¿cómo puedo hacerlo de la manera más fácil? Por lo tanto, si me puede dar un ejemplo de bacalao de trabajo para pantallas dinámicas de iOS y Android con Phonegap, será aún mejor.

Respuesta

5

las animaciones gif no son compatibles con Android. Las animaciones son posibles usando jQuery. Esto es lo que puede hacer

  1. Crear un data-role = "página" div que contiene la pantalla de bienvenida vista
  2. registrar un detector de eventos para el evento "pageshow" de esta página y comenzar su animación utilizando jQuery
  3. En la misma EventListener llamar la función de tiempo de espera de JavaScript

setTimeout('functionToLoadNewPage', 2000); //functionToLoadNewPage - function name which will load a new page using $.mobile.changePage and 2000 - number of milliseconds for splash screen to be visible

+3

Pero esta página se mostrará solo cuando se cargue WebView. Quiero decir que necesito una pantalla de inicio real que solo se muestra mientras se carga WebView. Puedo configurar este splash por super.setIntegerProperty ("splashscreen", ...) (para Android), pero no puedo animarlo de esta manera. – SergeyT

3

he sido buscando, y creo que deberías crear una interfaz javascript-android y hacer algo como lo hace Cordova.

Este es el código de Córdoba:

public class SplashScreen extends Plugin { 

    @Override 
    public PluginResult execute(String action, JSONArray args, String callbackId) { 
     PluginResult.Status status = PluginResult.Status.OK; 
     String result = ""; 

     if (action.equals("hide")) { 
      this.webView.postMessage("splashscreen", "hide"); 
     } else if (action.equals("show")){ 
      this.webView.postMessage("splashscreen", "show"); 
     } 
     else { 
      status = PluginResult.Status.INVALID_ACTION; 
     } 
     return new PluginResult(status, result); 
    } 

Y se invoca throught Javascript así:

exec(null, null, "SplashScreen", "show", []); 

También tendrá que hacerlo para iOS también, ve este enlace: ios fade out splash screen (iphone 5 friendly)

+0

¿Cómo ayuda agregar texto o animación a la pantalla de inicio? –

Cuestiones relacionadas