web-dev-qa-db-ja.com

Android Studio SuppressLint "ClickableViewAccessibility"が機能しない

ScrollViewでスクロールを無効にしたい場合があります。
これを行うには、_.setOnTouchListener_を使用してtrueonTouchに返します。

3.0スタジオでは、performClickメソッドもオーバーライドする必要があるという警告が表示されます。

_alt+enter_を押すと、この警告を抑制するオプションが表示され、@SuppressLint("ClickableViewAccessibility")がメソッドに追加されます。

残念ながら、これは機能していません-私はまだその警告を見ます。
_//noinspection_のさまざまな組み合わせも試しましたが、うまくいきませんでした。

この糸くずの警告を抑制するにはどうすればよいですか?

14
Goltsev Eugene

私は同じことに気づきました

@SuppressLint("ClickableViewAccessibility")

インライン抑制も

//noinspection AndroidLintClickableViewAccessibility

確実に動作します。後者は、Studio IDE=で作業するときの警告を抑制しますが、gradleタスクとしてlintを実行するときは抑制しません。

これまでのところ、唯一の抑制方法はAndroid Studioとlint gradleタスクの両方で機能し、インライン抑制を組み合わせることです

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

lint構成ファイル(ファイルの粒度で機能します)を使用して、たとえばbuild.gradle

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

lint.xml

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

価値のあるものとして、 報告された問題 があり、Android Studio 3.1。


アップデート2018-03-28:はい、Android Studio 3.1。

20
laalto