Afficher une listview

Résolu
Noob_For_Ever Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Noob_For_Ever Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je viens de débuter depuis peu sur Android Studio, et je rencontre mon 1er problème.

J'essaye de creer une listview toute simple, mais les données (saisies en dur) ne veulent pas s'afficher, et je n'ai aucun message d'erreur.

Voici le code de ma page d'accueil : MainActivity.java



public class MainActivity extends AppCompatActivity {


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



}
@Override
public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.main_menu, menu);

SearchView searchView = (SearchView) menu.findItem(R.id.searchable).getActionView();
SearchManager searchManager = (SearchManager) getSystemService(SEARCH_SERVICE);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));

return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {

return true;
case R.id.accueil:
setContentView(R.layout.activity_main);
return true;
case R.id.catalogue:
setContentView(R.layout.catalogue);
return true;

default:
return super.onOptionsItemSelected(item);
}
}

}


et le code ou je pense qu'il y a problème : listCatalogue.java


public class ListCatalogue extends MainActivity {


String[] catalogue_livre = {"Classique","Contemporain","Historique","Jeunesse","Policier","Thriller","SF/Fantasy/Fantastique", };


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

ListView maList = (ListView) findViewById(R.id.listView);
ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, catalogue_livre);
maList.setAdapter(adapter);
}



Si je le fait directement dans le main cela fonctionne, la liste apparait, mais en passant par le menu rien ne s'affiche :(

Auriez vous une idée?

Je vous remercie de m'avoir lu et si vous pouvez m'aider je vous remercie encore plus!!! ;)

2 réponses

BunoCS Messages postés 15952 Date d'inscription   Statut Modérateur Dernière intervention   3 918
 
Hello,

case R.id.catalogue:
  setContentView(R.layout.catalogue);

Ce n'est pas comme cela qu'il faut faire. Il faut lancer un nouvel écran et non écraser l'écran courant. Regarde
startActivity()
1
Noob_For_Ever Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Merci beaucoup BrunoCS!!!

Ça fonctionne parfaitement!!!!

Je le marque comme résolu ;)
0