2011-09-24 3 views
1

Je dois choisir entre deux activités (principales) de démarrage basées sur certaines données stockées. Logic J'essaie de réaliser est de regarder quelque chose comme:android choisir entre deux activités de démarrage

if (data == something) showActivity1(); 
else showActivity2(); 

Est-il possible de déclarer quelque chose comme cela dans le manifeste? Multiple

<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.LAUNCHER" /> tags? 

Ou existe-t-il un point d'application où ce code conviendrait? Je pensais à créer une activité, puis je leur ai juste assigné des vues de contenu différentes et géré la logique en conséquence, mais ces deux activités sont très très différentes, donc cela entraînerait beaucoup de code non connecté dans un fichier. Merci d'avance.

+2

Qu'en est-il d'une (troisième) activité principale dont le seul but est d'en commencer une autre? – Howard

Répondre

2

Si vous définissez plusieurs étiquettes MAIN & LAUNCHER, plusieurs activités apparaissent dans votre liste d'applications. Donc, ce n'est pas ce que vous voulez.

Ma recommandation est comme ça ...

  1. faire une activité transparente (travaux comme façade)
  2. juge dont l'activité pour commencer
  3. début activité cible et terminer l'activité de façade
+1

merci, je vais essayer cela. Un utilisateur ne remarquera-t-il pas un délai pendant que l'étape 2 est en cours? – Maggie

+1

si l'étape 2 prend du temps, il serait préférable d'afficher la boîte de dialogue de progression ou la vue de chargement. Si vous voulez afficher la vue de chargement, vous devez fournir une vue pour l'activité de façade. – kingori

Questions connexes