DispatchKeyEvent События аппаратных клавиш всегда доставляются в представление, которое в данный момент находится в фокусе.Они отправляются, начиная с вершины иерархии View, а затем вниз, пока не достигнут нужного места назначения.Если ваш View (или дочерний элемент вашего View) в настоящее время имеет фокус, то вы можете увидеть перемещение события с помощью метода dispatchKeyEvent ().Короче говоря, dispatchKeyEvent () будет вызываться, только если TextView / EditText находится в фокусе.
onKeyDown Вызывается, когда клавиша нажата и не обрабатывается ни одним из представлений внутри действия