2010-03-03 4 views
3

J'écris un jeu pour Android. Mon GUI a les écrans de base suivants (par exemple les informations et les interactions nécessaires sur chacun d'entre eux prendrait tout l'écran):Quand utiliser les mises en page et quand utiliser les activités?

  1. Menu principal (vous permettra de commencer un nouveau jeu, entrez les paramètres, voir des scores élevés, voir à propos de l'écran)
  2. Écran du jeu, c'est-à-dire où le jeu est joué.
  3. Écran Paramètres.
  4. Écran des scores élevés.
  5. À propos de l'écran (à savoir des crédits et un bouton de retour)
  6. jeu sur écran (arrivé à quand le jeu se termine)
  7. écran Pause (pause jeu et peut accéder aux paramètres)

Voici quelques-unes exemples de transitions que l'utilisateur peut effectuer entre ces écrans:

1-> 2-> 7-> 2-> 6 (commence un nouveau jeu, met en pause le jeu, revient au jeu, finit le jeu) 1-> 5-> 1 -> 4-> 1 (vues sur l'écran, retourne à la page principale, affiche l'écran des scores, retourne à la page principale)

Je suis vraiment confus quant à quand avoir une seule activité qui change de mise en page et quand créer de nouvelles classes d'activités. Par exemple, quand mon jeu se charge, j'ai une activité "principale" qui charge la disposition du menu principal. Lorsque vous cliquez sur le bouton Paramètres, je lance une activité "Paramètres" (qui utilise l'interface graphique des paramètres standard d'Android). Pour l'instant, lorsque vous démarrez un jeu, je passe la disposition de "main" à la disposition de l'écran de jeu (qui contient juste une grande vue de surface). Je ne suis pas vraiment sûr de ce que la meilleure façon d'intégrer le jeu sur écran, écran de score élevé, sur l'écran etc

Créer une nouvelle activité pour chacun semble vraiment lourd pour moi. Il y a beaucoup de code de plaque de chaudière impliqué pour chaque activité. De plus, la communication entre les activités semble être une douleur car vous devez utiliser des paquets. Utiliser une seule activité signifie que je peux juste partager des champs d'objets directement. Il semble que l'utilisation de dispositions pour ce qui précède serait plus compact.

Quelqu'un peut-il me donner quelques recommandations?

Répondre

1

Dans mes jeux, j'utilise une activité pour la plupart des activités ... (jouer, voir aide, voir les meilleurs scores, modifier les paramètres). Être dans une application signifie que vous pouvez partager certaines choses (par exemple le jeu en cours) dans un seul singleton. Vous n'avez probablement pas besoin de beaucoup de communication entre les activités, principalement la "commande" (c'est la raison pour laquelle vous allez à cette activité, par exemple le nouveau score élevé dans l'écran High Scores). Intention (j'utilise l'URL au lieu de l'ensemble).

Quelques choses peuvent être faites dans les boîtes de dialogue (je les utilise pour lancer une nouvelle partie, ou pour taper le nom du joueur). Ma règle est que si l'écran change complètement, alors c'est une nouvelle activité. De cette façon, les dispositions sont simples.

Questions connexes