Best UI framework to use to clone iOS UIKit UX

Monkey Forums/Monkey Beginners/Best UI framework to use to clone iOS UIKit UX

zardon(Posted 2014) [#1]
I'm wanting a UIFramework to clone the elements, fluidness, smoothness, and general UX experience of the iOS UIKit that would be cross platform for Android, iOS, Desktop and maybe Ouya.

The reason is I'm intending my game to be a sports management game and I would like the UX to be similar to the iOS UIKit style.

The top of my priority list is a tableview that will be able to handle a big bulk of data without slowing down. In iOS it uses a indexPath and similar to cache, so I'm not sure how the Monkey frameworks do it.

I'm currently looking at Ignition for Monkey and SimpleUI.

I've been told its possible to use FryUI for Monkey.


Nobuyuki(Posted 2014) [#2]
IF you use SimpleUI, I should note that there isn't any offscreen culling or caching to speak of for Panels. I had planned on adding spatial map support for this (supporting subwidgets only), but I never got around to it because I haven't needed the complexity yet in any of my projects. The truth is that you can put a lot of stuff on screen before needing to start culling. The smoothness you wish to achieve may not be 100% possible on Android anyway, due to the render thread's priority relative to the system. That being said, you can build a nice set of widgets pretty easily with SimpleUI just based on the stuff in the kit.

If you only need 1d scrolling and are willing to work with a slightly less intuitive interface, Scrollers do have culling compared to panels. Each element in a scroller must be the same height, however, as it works somewhat like a more advanced listbox. I've used Scrollers in a few games already for very large lists of things like bestiaries and item lists.

Extra special scrolling functionality can be achieved for these widgets by either extending their respective classes, or extending an InputPointer that is specified to the widget, things like jumping to a letter, scroll wheel support on desktop, "more content available" indicators, etc. The only special visual functionality provided from the classes are a SnapDrawer (an interface that renders the border pulling effect) for Scrollers, and a PercentX/Y for Panels (allows easier scrollbar rendering).

There is no one-size-fits-all solution, so I'd say to take a look at the kits available and find one that comes closest to achieving your needs in the long run. My philosophy was to make a kit that needs a bit more elbow grease to fully flesh out, but be "just enough" for what gamedevs want/need to start with and can build upon without getting easily stuck. Other kits may get you up and running faster with better functionality out of the box. YMMV.


nikoniko(Posted 2014) [#3]
What is about using WebView for HTML5 framework ratchet/framework7/ionic/jquerymobile?
You get combination at one screen (or screens switching) of monkey game engine and UI close to native without troubles to scale, internalization, etc.

I played with ratchet in android webview in the emulator. It's smoth and looks like iOS7.
But I have no enough monkey experience to implement it to monkey module/native classes yet.


zardon(Posted 2014) [#4]
webview? I need to learn JS and use local storage but its not for me; I want too go mobile and potentially have ability to go on app stores

I think it'll be 1d scrolling but is like 5,000 records and don't want it all in their clogging memory

I'll check out simpleui; it might solve the issue i'm after