3 ms·
Android already has a solid way of navigating UI with physical buttons. The first generation of Android phones didn't have touchscreens, so the whole OS was des
by yc12340 7y ago
Android already has a solid way of navigating UI with physical buttons. The first generation of Android phones didn't have touchscreens, so the whole OS was designed around DPAD controls — it's support for navigating UI with directional buttons is second to none.
The problem isn't OS itself, but applications. Android application developers are frequently implementing custom graphical components, that do not handle "presses" and "clicks" and instead try to directly interact with touchscreen.
Google have made a number of increasingly aggressive attempts to work around the issue — for example recent versions of Android try to infer purpose and interactivity of custom UI elements instead of expecting developer to declare it. But that does not help, when everyone is using a handful of fancy libraries, hardwired to require touchscreen.
Incidentally, the biggest offender is not a third-party component... It is RecyclerView — Google's official item list implementation, distributed as a separate library. It's support for DPAD navigation is so abysmal, that Google's own engineers (from different department, I presume), had to create Leanback framework largely from scratch instead of relying on official RecyclerView components.