J'ai un problème ici. Il semble simple et je continue à chercher sa solution. Malheureusement, je ne trouve rien. C’est mon problème ... Ce que je cherche à faire est d’obtenir la chaîne affichée dans la liste à partir d’une méthode de clic sur élément.
Ceci est ma listview:
- lol
- hi
- waw
Quand je clique sur "lol", je veux obtenir la chaîne "lol" .....
Que dois-je mettre dans mon code ici? :
lv = (ListView) findViewById(R.id.list_view);
lv.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3)
{
// Intent newI = new Intent(this,PDetail.class);
Intent newI = new Intent (Create.this, PDetail.class);
//String sd = ((() arg1).getText()).toString();
//newI.putExtra("x", arg2);
startActivity (newI);
// db.getList(arg3);
}});
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3)
{
String data=(String)arg0.getItemAtPosition(arg2);
}});
data
contient les données de votre position cliquée. Faites ce que vous voulez faire avec ça.
arg0
est votre AdapterView
, généralement un ListView
. arg2
est la position dans la ListView
. Vous pouvez obtenir les éléments de votre adaptateur:
Object item = arg0.getItemAtPosition(arg2);
Selon le type de votre objet dans votre adaptateur, une solution simple est:
String value = item.toString();
Le paramètre arg1
de votre écouteur est la vue de l'élément sur lequel vous avez cliqué.
En supposant que les éléments de votre ListView
soient TextViews
, vous pouvez essayer:
String itemText = ((TextView) arg1).getText();
use String val = (String) arg0.getItemAtPosition (arg2)