Remove “Method is never used” warning for OnClick annotation in Android Studio

情到浓时终转凉″ 提交于 2019-11-30 10:44:00

The correct way in Android Studio to suppress these warnings is to press Alt+Enter on the method giving the Method 'yourFunction()' is never used warning, and selecting

Suppress for methods annotated by 'butterknife.OnClick'

Simply add this annotation:

@SuppressWarnings("unused")

Just like that:

@SuppressWarnings("unused")
@OnClick(R.id.myButton)
public void clickHandler()
{
    // ...
}

My personal preference (which I see as good practice) is to add a comment with a brief explanation:

@SuppressWarnings("unused") // it's actually used, just injected by Butter Knife

Osvald's answer is spot on.

However, if you want to avoid suppressing warnings separately for each type of butterknife annotation, follow his instructions, and then open up .idea/misc.xml and find this section:

<component name="EntryPointsManager">
  <entry_points version="2.0" />
  <list size="1">
    <item index="0" class="java.lang.String" itemvalue="butterknife.OnClick" />
  </list>
</component>

Therein, simply replace butterknife.OnClick with butterknife.*.

From now on, all your injected event handlers will evade the warning.

Add another dependency for the compiler:

Gradle

dependencies {
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0' // new line
    compile 'com.jakewharton:butterknife:8.4.0' // original library
}

This is recommended on the official website.

Remember to Build -> Rebuild Project, so it will generate usages and make the warning go away.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!