5 ms·
I think that Flutter apps by the framework's nature will always have non-native appearance and feeling to at least some extent. And this makes it not very good
by boo-ga-ga 3y ago
I think that Flutter apps by the framework's nature will always have non-native appearance and feeling to at least some extent. And this makes it not very good fit for apps with a sufficient budget and the need for native appearance.
It's definitely good for small one-person projects, but the job market for these is not very lucrative.
- robertlagrant 3y agoIsn't that also true for React Native?
- mvid 3y agoNot really. RN usually defaults to system components
- ohgodplsno 3y agoSystem components is not a thing on Android. You've not seen the default EditTexts in years. Material, which you'd consider the default is a library, whether in XML or Compose (and Compose is a reimplementation of them). Also, Android has never pushed for unification of UIs. Use Material if you want because it's an alright design system, or write yours entirely from scratch. React Native & Flutter look... Exactly how you want them to look. Unless there's a bug in Flutter's Material implementation, it'll be the same.
- earthnail 3y agoYeah, but on iOS it's a thing. And it shows heavily in things like scroll behaviour.
- pzo 3y agoI'm iOS dev but right now learning flutter. Few observations: 1) Difference between new latest Material You (aka material 3.0) and SwiftUI is smaller than Material 2.0 and UIKit - at least regarding look & feel. 2) I find old UIKit style quite boring same with older material 2.0. On the other hand SwiftUI and Material 3.0 looks more modern. There is rarely any iOS app that use native widgets without completely changing branding and styling. 3) Comparing to SwiftUI, new Material 3.0 feels more complete - there is more widgets and navigation choices. UIKit and SwiftUI is lacking in widget departments regarding: snackbar, bottom sheet, modal bottom sheet, navigation drawer, navigation rail, modal navigation drawer, cards, multiple dialog options. I recommend to checkout and play with material 3.0 demo (just keep in mind this is web version- you will have even better experience when using native compiled version on mobile or desktop - web version of flutter could be better): https://flutter.github.io/samples/web/material_3_demo/#/ https://flutter.github.io/samples/web/material_3_demo/#/ 4) Try web flutter gallery to see numerous app samples (more complex) and widgets https://gallery.flutter.dev/#/ https://gallery.flutter.dev/#/ again even better to download mobile or desktop version that there is in play store: play store: https://play.google.com/store/apps/details?id=io.flutter.demo.gallery https://play.google.com/store/apps/details?id=io.flutter.dem... macos dmg (.zip): https://github.com/flutter/gallery/releases/latest https://github.com/flutter/gallery/releases/latest I tried both macos flutter gallery and on iOS and surpassingly is pretty good these days and smooth and feel native - even text selection works these days, moving cursor with long press on keyboard space etc. Occasionally was more difficult to dismiss keyboard on iOS and back/next mouse keys or touchpad gestures didn't work on macOS flutter gallery. But overall I'm quite satisfied and surprised comparing how it looked 4 years ago.
- mhoad 3y agoJust as an FYI your information is a bit out of date. They rewrote their entire graphics pipeline a while back to solve exactly this. This is what it looks like now in terms of performance if you want a demo https://flutter.gskinner.com/wonderous/ https://flutter.gskinner.com/wonderous/
- fellowmartian 3y agoI had high hopes for this new renderer, but it’s still not good enough. There’s a single frame lag when scrolling, it might not be noticeable to some people, but I do notice and it’s very annoying. There’s an issue opened: https://github.com/flutter/flutter/issues/110431 https://github.com/flutter/flutter/issues/110431
- cageface 3y agoSort of. It adds a lot of layers on top of the core components and isn't just vanilla native UI plus some tweaks. React Native apps still stick out compared to real native apps unless you put in a fair amount of extra work.
- jwells89 3y agoIn my experience RN apps are most obviously “un-native” feeling in their navigation, which is where the most custom-rolled code seems to be. It often feels clunky, with weird transitions and foreign behaviors.
- zigzag312 3y ago> And this makes it not very good fit for apps with a sufficient budget and the need for native appearance. It's definitely good for small one-person projects Do you have any data to back this claim. From my experience, many big budget applications (at least on desktop) don't have native appearance. Eg. products by Adobe, Steinberg, Autodesk, JetBrains etc.
- zerr 3y ago"Native controls" is less and less relevant, especially on mobile, where everyone tries to come up with completely custom styling.
- Tao3300 3y agoThis is one of those dumb things where user tests will stir up things like "why doesn't it look or act like (insert mainstream application)?" They have their hypercritical glasses on and fail to realize that the mainstream app already looks and behaves exactly like that; they're just so accustomed to it that they don't notice it. I'm not sure what you do about it. I fell victim to this a couple decades ago trying to reconcile theme inconsistencies between GTK and KDE apps on my Linux desktop. It was so irritating, but for longest time I was overlooking that Windows at the time also had apps using different Windows UIs from different eras. IIRC Outlook actually had an XP scrollbar for the Inbox frame and a Win32 scrollbar in the Preview frame. Two different UI styles in different frames of the same window within one application.