web-dev-qa-db-fra.com

Android Studio SuppressLint "ClickableViewAccessibility" ne fonctionne pas

Dans certains cas, je souhaite désactiver le défilement sur mon ScrollView.
Pour ce faire, j'utilise .setOnTouchListener Et renvoie true dans onTouch.

3.0 studio me donne un petit avertissement que je devrais également remplacer la méthode performClick et je ne veux pas le faire.

Lorsque je clique sur alt+enter, Cela me donne une option pour supprimer cet avertissement, il ajoute @SuppressLint("ClickableViewAccessibility") à ma méthode.

Malheureusement, cela ne fonctionne pas - je vois toujours cet avertissement.
J'ai également essayé différentes combinaisons de //noinspection, Mais pas de chance.

Comment supprimer cet avertissement de peluches?

14
Goltsev Eugene

J'ai remarqué la même chose que ni l'annotation

@SuppressLint("ClickableViewAccessibility")

ni la suppression inline

//noinspection AndroidLintClickableViewAccessibility

travailler de manière fiable. Ce dernier supprime l'avertissement lorsque vous travaillez dans Studio IDE mais ne le supprime pas lors de l'exécution de lint comme tâche gradle.

Jusqu'à présent, la seule méthode de suppression fonctionne à la fois dans Android Studio et la tâche de gradin de charpie est de combiner la suppression en ligne

//noinspection AndroidLintClickableViewAccessibility
someView.setOnTouchListener(...)

avec un fichier de configuration lint (qui fonctionne sur la granularité des fichiers), par ex. dans build.gradle:

lintOptions {
    lintConfig file("lint.xml")
}

et en lint.xml:

<lint>
    <issue id="ClickableViewAccessibility">
        <ignore path="**/TheClassToSuppressTheWarningIn.Java"/>
    </issue>
</lint>

Pour ce que ça vaut, il y a n problème signalé et il devrait être corrigé dans Android Studio 3.1.


Mise à jour 2018-03-28: Oui, elle est corrigée dans Android Studio 3.1.

20
laalto