В моем случае мне необходимо перехватить все ключевые события, прежде чем они будут направлены к целиПоэтому я установил KeyListener на каждое представление или виджет, Activity.onKey не может удовлетворить меня в этом случае.
Однако я обнаружил, что если представление (например, RelativeLayout) не фокусируется, оно не получит никакого KeyEvent.И я также получил следующие предупреждения
WARN / KeyCharacterMap (312): Нет клавиатуры для идентификатора 0
WARN / KeyCharacterMap (312): Использование стандартной раскладки клавиатуры: / system / usr / keychars / qwerty.kcm.bin
Если я установил фокусировку на просмотр, он получит KeyEvent.Мне любопытно об этом явлении.Я понятия не имею, если система никогда не отправляет KeyEvents для просмотра, который не может быть сфокусирован, или просто я использовал неправильный способ перехвата ключевых событий.