Вопрос:

Класс должен быть объявлен как абстрактный или реализовать ошибку абстрактного метода

java android class android-studio

68764 просмотра

3 ответа

46 Репутация автора

Это мой код, который должен изменить текст при нажатии кнопки: -

public class MyActivity extends ActionBarActivity {
    TextView txtview;
    Button butto;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
        ImageView imageView = (ImageView) findViewById(R.id.image);
        txtview = (TextView) findViewById(R.id.text);
        butto = (Button) findViewById(R.id.buttn);

        butto.setOnClickListener(new View.OnClickListener() {

                public void Onclick(View paramView) {
                txtview.setText("You Clicked it!");
            }
        });

    }}

Это View.OnClickListenerподчеркнуто, и это дает мне ошибку «Класс должен быть объявлен как абстрактный или реализовать абстрактный метод». Этот код был в основном скопирован из Интернета, и предполагается, что он работает нормально. Вероятно, это только ошибка Android Studio. Как я могу заставить его работать?

Автор: BrownMonkey300 Источник Размещён: 22.04.2015 06:06

Ответы (3)


7 плюса

314363 Репутация автора

Вы ошиблись в названии метода:

public void Onclick(View paramView)

должно быть

public void onClick(View paramView)

Следующие соглашения об именах Java могут вам помочь.

Автор: Eran Размещён: 22.04.2015 06:07

1 плюс

9266 Репутация автора

Трюки: добавь @Overrideвыше onClick(View). Без @Overrideпредупреждения означает, что вы не реализовали onClickListener.

Автор: SilentKnight Размещён: 22.04.2015 06:14

16 плюса

914 Репутация автора

Решение

View.OnClickListenerдолжна реализовывать функцию, onClick()иначе ваш класс должен быть абстрактным, чтобы вы могли реализовать свою onClick()функцию в каком-то дочернем классе. Но в вашем случае вы допустили орфографическую ошибку. Это должно быть onClick()вместо Onclick();

Автор: Usman Размещён: 22.04.2015 06:26
Вопросы из категории :
32x32