Flutter’s Key Difference: Owning Every Pixel
There’s been plenty of comparing Flutter with other cross-platform mobile frameworks. But the key difference is often overlooked or downplayed.
Flutter owns every pixel on the screen.
Cross-platform frameworks such as React Native and Xamarin.Forms which use native Android and iOS interface elements sound like a great idea, on paper:
“ Write once and run anywhere! Fully native interfaces! Apps feel like they fit right in! Screens magically adapt to platform paradigms!”
But these frameworks aren’t totally in control, they’re having to rely on the OS to draw the interface. And those native interface components come with baggage, like a partner who’s not totally over their ex.
And it can be a surprising amount of baggage. Development on Android started 16 years ago. In most of the world, it would nearly be able to drink. Sometimes I think it’s started early.
APIs have been changed, deprecated and removed. UI elements have evolved. With iOS, it’s all closed-source. Trying to tie the platform worlds together— when they’re already incredibly complex — can have some serious difficulties.
Reality
In my experience, designers don’t especially care about apps “fitting right in”. They want to bring…