Hacker News new | ask | show | jobs
by htormey 3312 days ago
Nice article. The lack of native iOS looking components would be a deal breaker for me.

I wonder how stuff like navigation is built? If that's all in dart I'd be interested in seeing how the back stack looks in the hierarchy explorer. I.e are precious screens rendered still.

2 comments

[disclaimer: I work on the Flutter project]

We're adding more Cupertino (iOS-flavor) widgets. A few that we already have: spinner, toggle slider, button, alert. Check out the library (https://docs.flutter.io/flutter/cupertino/cupertino-library....) and let us know which ones you'd like to see next! https://flutter.io/issues

Thanks!

Will your custom widgets work with all iOS accessibility features?

Accessibility is often forgotten when something gets reimplemented.

The goal is to work with all iOS accessibility features. You can see our open accessibility issues here:

https://github.com/flutter/flutter/issues?q=is%3Aopen+is%3Ai...

Notice that there are several open issues relating specifically to iOS accessibility features.

Accessibility is not complete yet, but it is definitely not forgotten.

I agree, but I'd take it one step further actually. For me it doesn't cut it if the widgets just LOOK correct. I want them to BE correct. So, native widgets only please, no mimicking.
Not only that but if you reimplement the widgets then your always playing catch up when they change. It's better to just use the platform's 'primitive views' then constantly reinventing a wheel that looks similar. Someone else also mentioned accessibility which to me is a deal breaker if your app doesn't match a native apps accessibility.
Is there any such toolkit? What exactly is "platform's 'primitive views'"? Usually the "native" implementations are actually bindings to the native APIs which require heroic courage(a lot of manual tweaking), not to mention that you still need to catch up/update your bindings when these APIs change.
I would say that there is. Both Xamerian and React Native use the platforms Native views: UIView on iOS and View on Android. I agree that they are just bindings but that is easier then having to reimplement them as they all have small quirks especially when accessibility comes into play. I can't speak of Xamerian but I've written some of those Native bindings for React Native and would not call it requiring 'heroic courage'. It's actually quite easy and if you were on the Native side you'd have to make those changes anyway because those APIs changed.
WxWidgets are kind of that in C++ land at least. I know they use GTK on Linux and native widgets on Windows. They might not have good OSX support though.