At various different events towards the end of 2013 I presented my thoughts on how to build custom UI controls for mobile devices.
UI controls are really important to designers, developers and users as they establish a common vocabulary which enables code/ui reuse between distinct projects. Putting the effort in up-front, with the UX design, the API design and the software architecture can save vast amounts of effort further down the line.
Creating custom controls doesn’t just have to be about providing the functionality to people outside your team - your other dev users could be yourself in 6 months time. It’s a lot easier to reuse a control which was designed to be suitably generic as opposed to trying to bastardise an incredibly situation-specific example.
I have put the slides I presented at 360iDev in Denver up only for you to view below. I presented a similar version of the talk in other fora - including Melbourne Monthly Mobile Meetup, and the Sydney Mobile Meetup.
The presentation has an accompanying iOS project - ShinobiKnob, which is built around the principles discussed. The source for this is on GitHub at sammyd/ShinobiKnob. I encourage you to take a look at it - have a play, fork it, raise some issues, fix them ;) etc.
Custom controls are exactly what we do all the time at ShinobiControls. If you’re looking for complex controls such as OpenGL-accelerated charts for your iOS or Android app, then I’d recommend you take a look at our products before you embark on a massive project yourself. If not - then have a go at building it yourself - it’s fun!
I’d love to hear any feedback you have - hit my up on twitter @iwantmyrealname.