Почему я не могу использовать аннотации Override на Android? - PullRequest
4 голосов
/ 14 марта 2012

Я занимаюсь разработкой приложения для Android, но не могу использовать аннотации Override. Он продолжает говорить, что метод должен переопределить метод суперкласса, который делает. Я использую Java 1.7 и Android API 8 (2.2). Использование Eclipse.

Есть идеи?

EDIT:

Пример

@Override
public int getCount() {
    // TODO Auto-generated method stub
    return this.data.size();
}

Но компилятор не позволяет мне использовать @Override, говоря, что это не метод суперкласса. Я расширяю BaseAdapter.

Ответы [ 2 ]

7 голосов
/ 14 марта 2012

Вы должны использовать Java 1.6 при создании проектов для Android.Java 1.7 не совместима с текущим набором инструментов Android.Измените ваши проекты на использование 1.6, и эта проблема должна исчезнуть

В eclipse: щелкните правой кнопкой мыши проект -> свойства -> Компилятор Java -> переключите все ссылки с 1.7 на 1.6

2 голосов
/ 14 марта 2012

Вы можете использовать @Override аннотацию. Если вы получаете эту ошибку, это означает, что у вас есть ошибка в прототипе метода, или вы не расширяете то, что хотите расширить.

Например, на уровне API 8 следующее выдаст ошибку, как метод, представленный в API 11:

@Override   
public void startActivities (Intent[] intents){

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...