J'essaie de désactiver la mise en surbrillance d'objets dans un GridView sous Android 2.2. Je trouve this other answer disant que je devrais définir le sélecteur sur un ColorDrawable transparent (android:listSelector="@android:color/transparent"
), mais les vues de mon GridView sont toujours grisées quand je les sélectionne. Je n'utilise que GridView pour afficher des objets statiques dans une grille. Aucun de ces objets ne sera sélectionné. Serait-il préférable d'utiliser simplement une vue de base et de dessiner mes images manuellement?Désactiver complètement la mise en surbrillance d'Android GridView (désactiver la sélection)
Répondre
Ok, il semble que j'ai trouvé la réponse.
Dans la définition de votre adaptateur pour le GridView, vous devrez remplacer les méthodes suivantes:
@Override
public boolean areAllItemsEnabled()
{
return false;
}
@Override
public boolean isEnabled(int position)
{
return false;
}
Cela entraînera tous les éléments dans votre grille pour être non sélectionnable, mais il obtiendra débarrasser de la surbrillance complètement.
Si vous avez besoin que les enfants soient focalisables, essayez android: descendantFocusability = "afterDescendants" – eveliotc
merci beaucoup ici, si vous avez des objets personnalisés dans votre liste (vues ..) et écraser leur onclicklistener, vous pouvez les sélectionner: =) parfait :) – cV2
cela désactiver complètement la sélection de l'article – coderek
Juste Set v.setOnClickListener(null);
Ceci est dans votre méthode Adapter.getView – jfleong
I encore besoin d'être en mesure d'obtenir des événements de clic pour le GridView, mais je suis sûr que cela fonctionnerait dans d'autres situations. – Kenny
cela va créer une exception – EyadMhanna
Pour garder les éléments cliquables ci-dessous, vous devez utiliser attr. dans votre GridView xml:
android: listSelector = "# 00000000"
Voir aussi: https://stackoverflow.com/a/2866074/928591
Je pense que cela devrait être la réponse acceptée ... – Radu
@Radu Cette solution a été explicitement mentionnée dans la question comme ne fonctionnant pas. – blahdiblah
mieux utiliser android: listSelector = "@ null" –
Si vous voulez juste désactiver l'aspect visuel de la sélection, vous pouvez faire les éléments suivants: contrôle
gridview.getSelector().setAlpha(0);
- 1. Android: Désactiver la surbrillance dans GridView
- 2. Comment désactiver complètement la mise en cache dans nHibernate?
- 3. QTreeWidget désactiver la sélection
- 4. Comment désactiver la surbrillance de recherche Vim
- 5. Comment désactiver complètement la validation "avide" en utilisant jquery validate?
- 6. Désactiver la mise en page pour l'action
- 7. Comment désactiver la mise en cache d'hibernation
- 8. Désactiver l'image de la mise en cache?
- 9. désactiver la sélection de texte tout en appuyant sur «shift»
- 10. Comment désactiver la bordure de lignes gridview
- 11. Comment désactiver la surbrillance dans Interface Builder de XCode
- 12. Comment désactiver temporairement la sélection de texte en utilisant JavaScript?
- 13. Désactiver la surbrillance de cellule dans un datagridview
- 14. UITextView désactiver la sélection de texte
- 15. Désactiver la loupe de mise en surbrillance de texte lors de la mise en attente sur Mobile Safari/Webkit
- 16. désactiver la sélection de texte dans gwt
- 17. WPF Toolkit Datagrid - comment désactiver la sélection?
- 18. UIPickerView désactiver la sélection de ligne
- 19. comment désactiver la sélection automatique de MobileSafari?
- 20. Désactiver la sélection de texte UITextView
- 21. Désactiver la sélection d'un seul UITableViewCell
- 22. Désactiver la mise en surbrillance mot-clé "événement" dans Visual C++
- 23. Désactiver le multi-sélection?
- 24. Comment désactiver la surbrillance (sélectionner) texte dans DIV
- 25. Comment désactiver complètement les cookies sur ASP.net?
- 26. Emacs 23: Sélection non mise en surbrillance
- 27. Activer/Désactiver les autres éléments en fonction de la sélection
- 28. comment désactiver la sélection d'image en utilisant jQuery?
- 29. Silverlight RichTextBox Désactiver la sélection de la souris
- 30. Désactiver la validation Jquery
ceci https://stackoverflow.com/questions/18415844/disable-gridview-item-onclick-and-enable-only-on-child-view – sushmita