Подтвердить что ты не робот

Удалить предупреждение "Метод никогда не используется" для аннотации OnClick в Android Studio

Извините, если этот вопрос задан раньше. Я использую Butterknife 5.0 с последней версией Android Studio (0.5.7). Как я могу удалить предупреждение "Метод никогда не используется" для методов, которые используют аннотацию "OnClick" ButterKnife.I заметил, что Eclipse не дает этого предупреждения для методов "OnClick". Спасибо заранее

4b9b3361

Ответ 1

Правильный способ в Android Studio для подавления этих предупреждений - нажать Alt + Enter на метод, предоставляющий метод 'yourFunction()' никогда не использовать предупреждение и выбирая

Suppress for methods annotated by 'butterknife.OnClick'

Ответ 2

Просто добавьте эту аннотацию:

@SuppressWarnings("unused")

Просто так:

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

Мои личные предпочтения (которые я считаю хорошей практикой) - это добавить комментарий с кратким объяснением:

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

Ответ 3

Ответ на освальд находится на месте.

Однако, если вы хотите избежать подавления предупреждений отдельно для каждого типа аннотации масляного ножа, следуйте его инструкциям, а затем откройте .idea/misc.xml и найдите этот раздел:

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

В этом случае просто замените butterknife.OnClick на butterknife.*.

Отныне все ваши обработчики обработанных событий уклонятся от предупреждения.

Ответ 4

Добавьте другую зависимость для компилятора:

Gradle

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

Это рекомендуется на официальном сайте .

Не забудьте Build → Rebuild Project, поэтому он будет генерировать использование и выпустить предупреждение.