2012-04-20 1 views
1

J'ai 3 mises en page; main.xml, secondscreen.xml, thidrscreen.xmlsi (écran actuel == R.layout.main)

Je veux écraser sur le bouton Retour comme currentscreen (quel écran est ouvert)

if(currentscreen == R.layout.main) 
{ 
    do something 
} 
    else (currentscreen == R.layout.secondscreen) 
    { 
    do something 
    } 

Comment puis-je faire cela?

Toute aide serait appréciée?

+1

, whay essayez-vous de faire ?? – DGomez

+0

+1 pour différentes activités. Cela devient une douleur de gérer les variables et tout le code lorsque vous essayez de tout faire en une seule activité – dymmeh

+0

J'ai peur d'utiliser l'intention entre les activités. Parce que j'ai trop de choses qui sont partagées entre mes méthodes (qui sont pour les mises en page) .. – Merve

Répondre

3

Je ne sais pas pourquoi vous voulez faire cela, exactement, mais si vous avez une carte d'identité sur la vue de haut niveau au sein de votre mise en page, vous pourriez probablement faire:

if (getContentView().getId() == R.id.myTopLevelViewFromMain){ 
     // do stuff 
} else if (getContentView().getId() == R.id.myTopLevelViewFromSecondScreen){ 
     // do other stuff 
} 

etc.

Alternativement, comme suggéré sur les commentaires à votre question (et c'est probablement le meilleur choix de conception), vous pouvez utiliser plusieurs activités. Cependant, une troisième solution consisterait à utiliser trois vues de niveau supérieur dans votre mise en page et à manipuler leur visibilité si nécessaire. Pourquoi pas 3 activités différentes pour chaque mise en page?

Questions connexes