2010-07-02 6 views
1

J'ai un ListView qui est rempli à partir d'un curseur (en utilisant rawQuery) dont j'ai besoin pour obtenir le texte de l'élément sélectionné à partir d'un clic.Obtention de texte à partir d'un Listview

protected void onListItemClick(ListView l, View v, int position, long id) { 
    super.onListItemClick(l, v, position, id); 
    Intent mViewChaptersIntent = new Intent(this, ViewWeb.class); 
    String s = ((TextView) l.getItemAtPosition(position)).getText().toString(); // Tried this, didn't work. 
    mViewChaptersIntent.putExtra("extension", s); 
    mViewChaptersIntent.putExtra("itmClicked", String.format("%d", id)); 
    startActivity(mViewChaptersIntent); 
} 

Mais je ne suis pas sûr de la bonne façon de le faire. Le getItemAtPosition que j'ai vu dans d'autres publications ne semble pas fonctionner ...

Répondre

1

getItemAtPosition() devrait vous renvoyer un Cursor qui est positionné à la ligne spécifiée. Vous devrez alors appeler le getString() pour récupérer la colonne que vous recherchez.

+0

Cela semblait le faire. Pour référence future: 'Chaîne s = (Chaîne) ((Curseur) l.getItemAtPosition (position)). GetString (2);' – AndyD273

+0

Comment pourrait être plus rapide sans génériques? – ktingle

Questions connexes