Only 2 equally contributing reasons: 1. UI is inherently a very complex problem, because of the state. Most of the so called web apps are thin clients with most of the state machine delegated and spread over backend services. 2. Android platform was shitty designed to begin with. Terrible architecture, ugly UX, frustrating docs etc.
Styles and inheritance and asynchronicity have turned what could be a simple approach into an inscrutable problem.