问题
Sorry if this question has been asked before. I am using the Butterknife 5.0 with the latest version of Android Studio(0.5.7). How can I remove the "Method is never used" warning for methods that use the 'OnClick' Annotation of ButterKnife.I noticed that Eclipse doesnt give this warning for the 'OnClick' methods. Thanks in advance
回答1:
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'
回答2:
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
回答3:
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.
回答4:
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.
来源:https://stackoverflow.com/questions/23382532/remove-method-is-never-used-warning-for-onclick-annotation-in-android-studio