Vous pouvez enregistrer un AdapterView.OnItemLongClickListener
sur le ListView
. Donc ce que vous devez faire est de trouver la vue de la liste:
dans onCreate
essayer
((ListView) getView).setOnItemLongKlickListener(...)
ou
((ListView) findViewById(<the id of your list view>).setOnItemLongKlickListener(...)
Lors de la mise en œuvre d'un OnItemLongClickListener
vous devrez remplacer la méthode onItemLongClick
:
De la documentation:
public abstract boolean onItemLongClick (AdapterView<?> parent, View view, int position, long id)
Ajouté au niveau de l'API 1 méthode de rappel à invoquer lorsqu'un élément ce point de vue a été cliqué et tenue. Les implémenteurs peuvent appeler getItemAtPosition (position) s'ils ont besoin d'accéder aux données associées avec l'élément sélectionné.
Parameters
parent The AbsListView where the click happened
view The view within the AbsListView that was clicked
position The position of the view in the list
id The row id of the item that was clicked
Returns true if the callback consumed the long click, false otherwise
Alors, parent
est votre ListView
. view
est l'affichage de l'élément de liste * long cliqué. position
est la position dans la liste et donc aussi la position dans votre tableau. Pour id
je ne suis pas sûr si les implémentations par défaut renvoie une constante ou le position
.
Pouvez-vous expliquer ce que chaque argument ici représente? AdapterView.OnItemClickListener ss = new AdapterView.OnItemClickListener() { \t \t \t @Override \t \t \t onItemClick public void (AdapterView > arg0, Vue arg1, arg2 int, \t \t \t \t \t longue arg3) { \t \t \t \t \t \t \t} \t \t}; –
1) 'OnItemClickListener' est le mauvais. Vous vouliez un * OnItem ** Long ** ClickListener *; 2) Je vais ajouter quelque chose à ma réponse. –
Les arguments sont les mêmes pour les deux auditeurs –