2014-12-08 3 views
3

Андроида студия показывает предупреждение «метод setFoo никогда не используется» в коде ниже:Wrong предупреждения в андроиде студии

public void setFoo(float foo) { 
    mFoo = foo; 
    invalidate(); 
} 

protected void startFooProcess() { 
    ObjectAnimator animator = ObjectAnimator.ofFloat(this, "foo", 1.0f, 0.0f); 
    animator.setDuration(getResources().getInteger(android.R.integer.config_longAnimTime)); 
    animator.setTarget(this); 
    animator.start(); 
} 

Но I`m использовать его с объектом аниматор Как подавить такого рода предупреждение ?

+0

вы можете добавить @SuppressWarnings ({ "UnusedDeclaration "}) – mgcaguioa

ответ

1

Если вы нажмете на имя метода setFoo, вы получите значок желтой лампочки, который вы можете щелкнуть по значкам быстрого определения. В качестве ярлыка с помощью каретки в имени метода вы можете использовать комбинацию клавиш для «Показать действия намерения», которая является Alt + Enter в используемой по умолчанию клавиатуре Mac.

Быстрое исправление «Безопасное удаление» setFoo (float) '"не то, что вы хотите, но вы можете расширить его, чтобы увидеть больше параметров либо с клавиатуры, либо нажав стрелку вправо. Это показывает параметры, которые вы можете использовать для отключения проверки. Скриншот:

Screenshot of UI for options for suppressing warnings

+1

Это больше проблема, чем решение, потому что опционы sup ress для метода создайте аннотацию @SuppressWarnings («UnusedDeclaration»), но эта штука грязная, параметры supress для класса делают одно и то же для всех классов и отключают опцию, не являются хорошей идеей, потому что невозможно найти истину, а не используемые методы ... – ademar111190

+0

Хотя все это правда, я не уверен, что вы можете здесь разумно ожидать. У вас есть много разных вариантов для отключения проверки, каждый из которых имеет преимущества и недостатки. Единственное, о чем я мог подумать, было бы включить в себя какой-либо фиктивный класс или метод, который заставляет вызовы методу работать с проверкой, но это также имеет недостатки. –

+0

Да, я согласен с тем, что я ожидаю, это решение, которое не меняет исходный код. Например, у меня есть другие проблемы с lint, которые я исправил с некоторыми конфигурациями в файле lint.xml в корневой папке приложения. Что-то вроде этого я считаю хорошим решением. – ademar111190

2

Файл> Invalidate кэширует/Restart

исправить эту проблему

Вы можете увидеть это enter link description here

+0

Спасибо, что это сработало для меня, это заставило меня замочить :) – SammyT

Смежные вопросы