Over a million developers have joined DZone.

This Week in Mobile: Swift Syntax Sugar and Epoxy for Android

DZone 's Guide to

This Week in Mobile: Swift Syntax Sugar and Epoxy for Android

This week covers everything from cleaning up the syntax around UIView animations to using arguably the best alternative to a plain RecyclerView.

· Mobile Zone ·
Free Resource

As we get towards the holiday season, many developers will be thinking about working on their side projects, or maybe taking their work home and making some improvements. Hopefully you'll get inspiration for either pursuit in our weekly mobile roundup.


Some projects to check out:  


  • If you've ever wanted to create your own widget for use by others, check out this article on how to Make an Android Custom View, Publish and Open Source.

  • Epoxy is Airbnb's answer to the boilerplate that surrounds using RecyclerView, and their engineering team have just published an introductory article to it in Airbnb's View Architecture on Android.

  • A Pragmatic Android Application Architecture puts forward a few simple ideas to help clean up your app's architecture. You're sure to find some inspiration in here for things that are bothering you about your own code structure.

  • If you need to create animations using AnimatedVectorDrawable on Android, the brilliant AndroidIconAnimator is what you need. It's disappointing there's no plugin yet in Android Studio to create animations, but with tools like this being developed, you can't help but feel a little spoilt! 

Some projects that are worth looking at this week: 


Some observations and predictions on the The State of UX in 2017 as we move into a new year.

Optimistic UIs in under 1000 words is an illustrated introduction into a popular UI pattern where no progress bars are needed. Worth a read. 

Looking for something to read over the holidays, check out The Best New UX Books of the Last 3 Years

ios ,swift ,android ,mobile

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}