1. Wir haben diesmal 2 Gewinnspiele zeitgleich für euch - Gewinne einmal ein UMI Plus E - Beim 2ten könnt ihr ein Nomu S30 gewinnen!
  1. anfortas, 06.08.2010 #1
    anfortas

    anfortas Threadstarter Neuer Benutzer

    Hallo

    Ich bin neu in Android und habe ein kleines Problem:

    In meiner Liste sollen die verschiedenen Items anklickbar sein, je nach dem soll sich dann eine verschiedene Activity öffnen. Bisher öffnet sich jedoch beim Klicken auf alle Items die gleiche Activity (ComeOn1)
    Wie bringe ich es fertig das bei klick auf Position 2 ComeOn2 geöffnet wird?

    ListView l1 = (ListView) findViewById(R.id.list1);
    l1.setAdapter(new ArrayAdapter<String>(this,
    android.R.layout.simple_list_item_1, LEKTIONEN1));
    l1.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> a, View v, int
    position, long id) {
    Intent myIntent = new Intent(v.getContext(),
    ComeOn1.class);
    myIntent.putExtra("itemID", String.valueOf(position+1));
    startActivityForResult(myIntent, 0);

    }});

    Vielen Dank
     
  2. the_alien, 07.08.2010 #2
    the_alien

    the_alien Android-Lexikon

    Überprüfe welches Item überhaupt geklickt wurde. Der ClickListener reagiert ja auf jeden Click der auf der Liste gemacht wird.
     
  3. anfortas, 07.08.2010 #3
    anfortas

    anfortas Threadstarter Neuer Benutzer

    ...und wie mach ich das?
     
  4. Fr4gg0r, 07.08.2010 #4
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    was glaubste warum dir "position" beim onClick mitgegeben wird? ;)
     
  5. anfortas, 07.08.2010 #5
    anfortas

    anfortas Threadstarter Neuer Benutzer

    Ja, dass habe ich soweit schon durchschaut.
    Aber wie kann ich eine variable Activity aufrufen?
    Wie kann ich diese Positionsnummer verwenden?
    Gibts da einen einfachen Weg, wie so was:

    Intent myIntent = new Intent(v.getContext(),
    ComeOn(position).class);
    ?

    Oder soll ich das mit
    if (position == 1){
    Intent myIntent = new Intent(v.getContext(),
    ComeOn(position).class);
    }
    machen?

    Vielen Dank für die Hilfe
     

Diese Seite empfehlen