2017-03-11 3 views
-1

Ich habe eine ListView mit mehreren Artikeln und jeder Artikel hat seine eigene Activity Klasse, um Details anzuzeigen. Wie kann ich zu einer geeigneten Aktivität wechseln, wenn der Benutzer ListView auswählt?Wie zeigen Sie verschiedene Aktivitäten für verschiedene ListView-Elemente?

Mein aktueller Code folgt:

ListView listView; 
ArrayAdapter<String> adapter; 

String[] hotel = {"one room", "double room", "suit", "vip"}; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.activity_main); 

    listView = (ListView) findViewById(R.id.listView); 
    adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, hotel); 

    listView.setAdapter(adapter); 
} 
+0

Verwenden Sie [switch()] (https://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html) Anweisung –

+0

Verschieben Sie den Text vom Titel zum Hauptteil und führen Sie einen neuen Titel ein – SergGr

Antwort

1

hinzufügen setOnItemClickListener zu Ihrem Listview in onCreate unter listView.setAdapter(adapter);:

listView.setOnItemClickListener(new OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, 
        long id) { 
       if(position == 0){ 
        Intent intent = new Intent(MainActivity.this, OneRoomActivity.class); 
        startActivity(intent); 
       } 

       else if(position == 1){ 
        Intent intent = new Intent(MainActivity.this, DoubleRoomActivity.class); 
        startActivity(intent); 
       } 

       //Do as above for rest of the list items 
      } 
     }); 

Hoffnung, das hilft.

Verwandte Themen