2017-01-05 5 views
0

J'ai une vue de contenu dite primaire sur l'activité principale, quand on clique sur un bouton, elle définit une autre vue de contenu dit secondaire avec setContentView (R.layout.sec_content). Ce que je veux maintenant que lorsque le bouton Précédent est pressé, il doit définir le contenu principal si la vue actuelle est secondaire sinon il devrait fermer l'activité. comment je fais ça? ici est mon codeComment obtenir l'affichage du contenu actuel de l'activité?

public class Ch_1 extends AppCompatActivity { 

Button men1, men2, men3; 
TextView tv1; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_ch_1); 

    men1 = (Button)findViewById(R.id.men1); 
    men1.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      // TODO Auto-generated method stub 
      setContentView(R.layout.activity_read__view); 
      TextView tv1 = (TextView)findViewById(R.id.read_view); 
      tv1.setText("This is text in READ_VIEW activity"); 




     } 
    }); 


} 

}

+0

Oui je suis Android Studio. – Hussain

+1

Désolé, je suis nouveau sur Android. – Hussain

+0

Plutôt que de créer deux mises en page pourquoi ne créez-vous pas une deuxième activité pour votre mise en page alternative, votre bouton ouvrira la deuxième activité et votre onBackPressed se comportera naturellement (vous ramener à l'activité précédente (mise en page)? – ScottishUser

Répondre

-1
public class MainActivity extends AppCompatActivity { 

Boolean isClose = true; 
Button btn; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    btn = (Button) findViewById(R.id.button); 
} 

public void onpressed(View view){ 
    isClose = false; 
    setContentView(R.layout.second); 
} 

@Override 
public void onBackPressed() { 
    if (isClose){ 
     finish(); 
    } else { 
     setContentView(R.layout.activity_main); 
     isClose = true; 
    } 
} 

}

+0

Comment pouvez-vous définir deux vues, en même temps comme 'setContentView' deux fois, qui a déjà une vue parent. – W4R10CK

+0

il y a une variable booléenne .. si c'est vrai que vous avez terminé votre activité sinon il va supprimer la vue actuelle et ajouter une nouvelle vue –

+0

@saumilpatel Merci beaucoup. ça marche – Hussain