Anzeige der Daten der GridView im gleichen Fenster.

  • 4 Antworten
  • Letztes Antwortdatum
Z

zblack

Gast
Löschen
 
Zuletzt bearbeitet von einem Moderator:
Hallo zblack,

ich bin zwar noch Anfänger, habe aber grade "ähnliches" zu bewältigen.
Das "onClick"-Event habe ich wie folgt aufgebaut:

Code:
GridView iste_gv = (GridView) findViewById(R.id.iste_gv);

iste_gv.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) {
          
if (arg2 == 0) {
String text = "Das erste Element wurde geklickt";               
Toast.makeText(getBaseContext(), text, Toast.LENGTH_LONG).show();    
}
if (arg2 == 1) {
String text = "Das zweite Element wurde geklickt";               
Toast.makeText(getBaseContext(), text, Toast.LENGTH_LONG).show();    
}
if (arg2 == 2) {
String text = "Das dritte Element wurde geklickt";               
Toast.makeText(getBaseContext(), text, Toast.LENGTH_LONG).show();    
}

}});
Hoffe das hilft Dir ein wenig weiter.

Liebe Grüße,
pyretta
 
ne, den listener schreibe ich doch in der baseadapter klasse. sonst wird das nicht funktionieren.
 
keine ideen ???
 
Hi,
entferne einfach den OnClickListener aus deinem Adapter, der ist überflüssig, da du dein TouchEvent ja mit der OnItemClick-Methode in deinem Fragment abhandelst. Somit ist die pos variable im Adapter auch überflüssig.

Probiers dann mal wie folgt:
Code:
@Overridepublic void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) 
{
    tubString x = ta.getItem(arg2).getText().toString();
    tvx.setText(x);
}


Anmerkung:
gib in der Adapter Methode getCount 0 zurück, wenn t_v == null ist. Und bei der Methode getItemId anstatt 0 die Variable position.

Auch die getView() Methode solltes du überarbeiten und Layout recyclen anstatt immer wieder zu inflaten. Layouts zu inflaten kostet viel Leistung.
Hier ein Link zu dem Thema in Kapitel 5.3 Holder Pattern: Android ListView and ListActivity - Tutorial
 
Zurück
Oben Unten