Button Click bei einem Layout welches durch Inflate erzeugt wurde

  • Antworten:2
Lars
  • Forum-Beiträge: 19

05.02.2014, 16:09:02 via Website

Huhu,


ich hab mal wieder eine Frage :P


Ich habe für meine Kontaktansicht nun alles fertig und ich lese aus der Datenbank kontaktdaten aus ( Telefonnummern, email adressen) ,

Diese werden dynmaisch mit

1private void setLayout(String t){
2 LinearLayout layout = (LinearLayout)findViewById(R.id.layoutPhone);
3 View child = getLayoutInflater().inflate(R.layout.layout_phone, null);
4 TextView phone= (TextView) child.findViewById(R.id.phone);
5 phone.setText(t);
6 layout.addView(child);
7 }
8 private void setLayoutMail(String t){
9 LinearLayout layout = (LinearLayout)findViewById(R.id.layoutMail);
10 View child = getLayoutInflater().inflate(R.layout.layout_email, null);
11 TextView mail= (TextView) child.findViewById(R.id.mail);
12 mail.setText(t);
13 layout.addView(child);
14 }

in ein LinearLayout geschrieben und aufgelistet . Wie das Layout für die Telefonnr oder Email ist habe ich jeweils eigene XMLs geschrieben.


Jetzt zu meiner Frage . Wie kann ich es am besten machen das ich ne ClickMethode habe, zum Beispiel habe im TelefonLayout 2 Images.Telefon und ein Brief. Wenn ich jetzt auf den Brief drücke möchte ich sich zb die SMS öffnet.

WIe kann ich direkt auf dieses ImageView zugreifen ?

Liebe Grüße

PS: wenn ich das So machen
1public void phone (View v){
2
3 TextView number= (TextView) findViewById(R.id.phone);
4 Toast.makeText(getApplicationContext(),name.getText(),Toast.LENGTH_LONG).show();
5 }

bekomme ich nur den ersten eintrag beim 2 wird auch die Nr vom ersten eintrag angezeigt

— geändert am 05.02.2014, 16:21:40

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

05.02.2014, 17:33:53 via Website

Am besten du machst Brief etc. als button mit Bild und legst diese dynamisch an. Dann auf jeden Button einen OnClickListener, der dann deine Methode ausführt.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Lars
  • Forum-Beiträge: 19

06.02.2014, 09:15:05 via Website

Habe es jetzt so gelöst,dass ich bei dem erzeugen dem Button ne eigene ID zuweise, so kenne ich Sie und kann dann jeweils durch ne Case anweisung auf den richtigen Button zugreifen.

Antworten