ボタンを押した直後の矢印キーのイベント
ちょっとハマったのでメモ。
(調査に協力してくれたid:yone098に感謝)
画面上にボタンを1つ配置してアプリを起動し、ボタンを押してから例えば「↑」キーを押すと、1回押してもActivity#onKeyDown()が呼ばれなかった。(2回目以降はOK)
Activity#dispatchKeyEvent()は呼ばれたので、
dispatchKeyEvent() > キーのデフォルトの動作 > onKeyDown()
かと思ったのだが、よく調べてみるとdispatchKeyEvent()にもACTION_DOWNのイベントが来ていないことが分かった。
というわけで、ボタンを押してから「↑」を押すと1回目のACTION_DOWNイベントは発行されないのかもしれない。
でもなんでなんだろ?