Извините, если этот вопрос уже был задан. Я использую Butterknife 5.0 с последней версией Android Studio (0.5.7). Как удалить предупреждение «Метод никогда не используется» для методов, использующих аннотацию «OnClick» для ButterKnife. Я заметил, что Eclipse не выдает это предупреждение для методов «OnClick». заранее спасибо
Удалить метод никогда не используется, предупреждение для аннотации OnClick в Android Studio
Ответы (4)
Правильный способ подавления этих предупреждений в Android Studio — нажать Alt+Enter в методе, выдающем предупреждение Метод 'yourFunction()' никогда не используется, и выбрать
Suppress for methods annotated by 'butterknife.OnClick'
Просто добавьте эту аннотацию:
@SuppressWarnings("unused")
Просто так:
@SuppressWarnings("unused")
@OnClick(R.id.myButton)
public void clickHandler()
{
// ...
}
Мое личное предпочтение (которое я считаю хорошей практикой) — добавить комментарий с кратким объяснением:
@SuppressWarnings("unused") // it's actually used, just injected by Butter Knife
Ответ Освальда точен.
Однако, если вы хотите избежать отключения предупреждений отдельно для каждого типа аннотаций типа «масло-нож», следуйте его инструкциям, а затем откройте .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.*
.
С этого момента все ваши внедренные обработчики событий будут обходить предупреждение.
.idea
файлов, поэтому каждый разработчик должен проделывать этот трюк индивидуально, в то время как аннотация работает автоматически для всех, поскольку она является неотъемлемой частью кодовой базы.
- person Konrad Morawski; 11.05.2015
.idea
, поэтому в любом случае у вас будет одна и та же проблема. Что является и не фиксируется в репозитории, полностью зависит от того, что репозиторий настроен на игнорирование.
- person Tom; 18.08.2015
Добавьте еще одну зависимость для компилятора:
Грейдл
dependencies {
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0' // new line
compile 'com.jakewharton:butterknife:8.4.0' // original library
}
Это рекомендуется на официальном сайте.
Не забудьте Создать -> Перестроить проект, чтобы он сгенерировал использование и убрал предупреждение.