Comment sélectionner un élément ListView après un clic long?

J'ai un drôle de petit problème. J'ai enregistré un ListFragment à la fois comme OnItemClickListener et OnItemLongClickListener de sa propre ListView.

Lorsque le onItemClick événement est appelé, l'intention de la vue de détail de l'activité de cet élément est commencé, pas de problèmes là-bas.

Lorsque le onItemLongClickévénement se produit, je veux accomplir les choses suivantes:

  • Créer un taxi
  • Garder le long appuyé sur l'élément sélectionné

Code:

@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
    if(this.cabMode != null)
        return false;
    this.cabMode = getActivity().startActionMode(editModeCallback);
    view.setSelected(true);
    return true;
}

La CABINE sera le montrent, cependant, le choix de ne pas rester avec l'élément.

Quelques bribes et des morceaux, dans le cas où ils sont pertinents: j'ai lu sur la résolution de ce problème avec les appels à view.requestFocusFromTouch() ou à l'aide de listView.setItemChecked()mais cela ne fonctionne pas pour moi. Aussi, les points de vue pour les éléments de la liste sont instanciées à partir d'une mise en page personnalisée, mais n'ont pas coutume d'écouteurs d'événement attaché.

Toute aide est appréciée. Thx!

source d'informationauteur Chris