2014-06-06 2 views
0

Je me demandais juste si la pratique standard consiste à créer une classe d'activité/fragment pour chaque fichier de mise en page (nouvelle page). Exemple:Une classe pour chaque mise en page (nouvelle page)?

MainActivity.java

onCreate(){ 
    setContentView(R.layout.**start_page**) 
} 

Et que lorsque l'utilisateur clique sur un bouton dans la barre d'action (ou un autre bouton sur l'écran):

onOptionItemSelected() { 
    switch XX -> case XX: setContentView(R.layout.**next_page**) 
} 

Ainsi pourrait Je fais ce qui précède au lieu de lancer une nouvelle activité.java (qui contient un nouveau layout.xml) avec une intention, ou gonfler la vue avec un fragment.java (qui contient aussi un nouveau layout.xml).

Je peux voir que la navigation haut/bas ne fonctionnerait pas avec le code ci-dessus, mais est-ce la seule raison pour laquelle vous devez créer deux fichiers (.java & .xml) pour chaque nouvelle page de votre application .

Répondre

0

Oui vous pouvez le faire techniquement mais attention si vous créez déjà une instance de vue disons Button et que vous changez le bouton de disposition sera nul parce que le bouton ne se trouve pas dans votre View et il faudra encore du temps pour le rendre la disposition. Il est donc recommandé de démarrer une nouvelle activité ou de créer un fragment.

0

Vous pouvez le faire, mais chaque vue sera sur l'activité donnée, et les gestionnaires d'événements seraient dans la même classe, ce qui n'est pas vraiment modulaire. Il pourrait devenir extrêmement pléthorique et vous aurez une superclasse de 2000 lignes car il gère chaque clic de bouton dans des fonctions arbitraires (ou pire encore, dans une seule fonction onClick).

Questions connexes