0
votes

L'écran anti-éclaboussures Android ne s'affiche pas

J'essaie de mettre en œuvre une splashscreen dans mon application. Malheureusement, rien n'apparaît avec le code que j'utilise maintenant, il saute simplement directement dans ma première activité. Voici le code de mon fichier launch_screen.xml, qui figure dans mon dossier digue: xxx

Notez que le fichier dessinable est un atout vectoriel.

et voici le code de mon fichier styles.xml, où je crée un nouveau thème à l'aide de ce fichier launch_screen.xml: xxx

code de mon manifeste: xxx < / Pré>

Quelqu'un pourrait-il me dire ce que je fais mal et comment résoudre ce problème?


1 commentaires

@Vrushipatel a édité mon code pour inclure cette


6 Réponses :


0
votes

Créer une activité et une conception normales dans XML Fichier puis à l'aide de l'option Post Post Dirtler.

handler.postDelayed(new Runnable(){
        @Override
        public void run() {
            //startactivity
            finish();
        }
    }, 7000 );


0 commentaires

0
votes

Je suppose que vous ne retariez pas le début de la nouvelle activité à partir de l'écran SPLASH qui ne montrant pas l'écran SPLASH.

Essayez: - P>

new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            startActivity(yourIntent);
            finish();
        }
    }, 1000);


2 commentaires

Où dois-je mettre ce gestionnaire?


Dans la création d'une activité éclaboussure



0
votes

Vous devez mettre en œuvre filtre à l'intention à votre SplashScreen dans manifeste . Par exemple: xxx


3 commentaires

Merci pour votre réponse. J'ai déjà cette ligne incluse dans mon manifeste. J'ai édité ma question ci-dessus pour montrer cela.


@minkate pouvez-vous partager aperçu de la classe classe?


C'est juste ma première activité, il n'y a aucune référence à la SplashScreen dans cette activité



0
votes

Voici mon code pour l'écran de Splash et ça fonctionne très bien: xxx

où SplashScreenactivity est une activité standard déclarée dans AndroidManifest.xml < / p>


3 commentaires

C'est anticitern et cela montre également que vous ne comprenez même pas ce qui est le but de l'écran des éclaboussures. L'écran Splash n'est pas destiné à ralentir le démarrage de l'application


@ user1209216 Vous avez raison si vous avez besoin d'écran SPLASH jusqu'à ce que vos données soient chargées. Mais parfois, il est nécessaire de montrer des éclaboussures à chaque fois. Dans mon application, j'ai besoin d'afficher à chaque fois.


Ce n'est pas SplashScreen, son écran de chargement. Vous n'avez aucune écran SPLASH et votre application ne démarre sans écran SPLASH, puis indique l'écran de chargement. L'écran initial Ugly Wihate est toujours là avec votre approche.



2
votes

Si vous n'utilisez pas d'activité séparée pour l'écran SPLASH, vous pouvez définir le thème Splash sur l'activité dans le fichier manifeste: xxx pré>

styles.xml p>

@Override
protected void onCreate(Bundle savedInstanceState) {
    setTheme(R.style.AppTheme);
    super.onCreate(savedInstanceState);
}


3 commentaires

C'est la seule réponse valide jusqu'à présent. Je ne vois pas de point de ralentir intentionnellement l'application d'application seulement pour montrer des éclaboussures


@minkate Êtes-vous sûr que le problème n'est pas dans l'écran de Splash est-il drable? Avez-vous essayé d'afficher une couleur d'écran en plein écran en premier? Pour voir si cela fonctionne?


@Mickverm je pense que vous avez raison .. Lorsque j'essaie d'afficher l'image, j'obtiens l'erreur suivante: Java.lang.RuntimeException: Impossible de démarrer l'activité ComponentInfo {com.example.marykate.MaryKatefordefyp / com.exam Ple.Marykate .Marykat EFORDEFYPYVENTS Activité}: Android.Content.res.Resources $ NOTFoundException: Fichier Res / Diable / Launing_Screen.xml à partir d'une ressource Diable # 0x7f0700A2 Vous ne savez pas comment gérer cela



0
votes

Comme @mickverm Réponse est correct, il y a un problème avec IT - SPLASH Écran sera affiché à chaque activité est recréé par le système. Donc, dans mes applications, j'utilise toujours une activité dédiée à l'écran des éclaboussures. Cependant, l'activité n'a pas de mise en page et uniquement sur le thème de lanceur, de sorte qu'il charge immédiatement.

C'est décrit ici: https: //www.bignerdranch. Com / Blog / Splash-Écrans-The-Right-Way / N'utilisez aucune approche avec le manipulateur / le sommeil et l'activité complète, sauf si vous n'avez pas besoin (par exemple, de faire quelque chose en arrière-plan et de montrer des progrès sur l'écran des éclaboussures)


0 commentaires