Je veux demander comment changer et sélectionner un seul événement sous ListView. Mon code ci-dessous fonctionne. Mais lorsque l'OnitemLongClick incendie, l'Onitemclick incendie également. Comment puis-je changer l'événement où un seul événement sera détecté:
lstResult.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position,
long arg3) {
// TODO Auto-generated method stub
//showToast(arg0.getItemIdAtPosition(position) + "");
String str = searchWhere(lstResult.getItemAtPosition(position) + "");
String word = lstResult.getItemAtPosition(position).toString();
showDialog(word,str);
}
});
lstResult.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
// TODO Auto-generated method stub
showToast(lstResult.getItemAtPosition(position) + "");
return false;
}
});
3 Réponses :
Lorsque vous retournez FALSE sur votre OnImLongClickLicklistener de sorte que cela ne serait pas incendié, vous pouvez donc définir une variable booléenne pour basculer entre vos auditeurs P>
retour booléen true à la fin de OnitemlongClick. P>
de la documentation: "TRUE si le rappel a consommé le long clic, faux sinon"
Selon Documentation de OnitemLongClickListener: P>
retourne vrai si le rappel a consommé le long clic, faux sinon p> blockQuote>
Vous devez retourner
true code> si le clic long est tiré. p>