Как переопределить функцию класса KeyEvent? - PullRequest
0 голосов
/ 27 мая 2019

У меня возникла проблема с переопределением метода: onKeyDown
Я пытаюсь создать плагин, который будет использоваться в единстве.

Я получаю ошибку: «Метод не переопределяет метод из своего суперкласса» @Override подчеркивается этой ошибкой

Цель состоит в том, чтобы узнать, когда клавиша питания нажата.

В конструкторе я добавил метод super для устранения другой ошибки, возникшей после добавления extends KeyEvent. Сообщение об ошибке гласит: «В 'android.view.KeyEvent' нет конструктора по умолчанию"

Я пробовал это, но метод не отображается в списке https://www.jetbrains.com/help/idea/overriding-methods-of-a-superclass.html

import android.util.Log;
import android.view.KeyEvent;

public class PowerButtonPlugin extends KeyEvent {

    private static final PowerButtonPlugin ourInstance = new PowerButtonPlugin();

    public static PowerButtonPlugin getInstance() {
        return ourInstance;
    }

    private PowerButtonPlugin() {
        super(0, 26); //event: press down, button power key

    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (event.getKeyCode() == KeyEvent.KEYCODE_POWER) {           
            return true;
        }
        return false;
    }
}
...