Category: ui
-
Building a Pride Rainbow Easter Egg into the Over Android App 🏳️🌈
This post originally appeared here on the GoDaddy Engineering blog. The Over App is a playground for creating beautiful content for social media. As developers on the app, we are often inspired by the pictures and videos that our users make. To inspire our users a bit more, we decided to create a small easter…
-
Getting Started with the Motion Editor in Android Studio 4.0
Android Studio 4.0 has been released in the stable channel! 🥳 What does this mean for us? Well, the new Motion Editor is in Android Studio 4.0 and if you are someone who prefers to use the stable version of tooling, this is probably your first look at the Motion Editor. In this blog post,…
-
AsyncAndroid: Getting Started with MotionLayout
Wow, what a weird time to be alive, huh? I’m writing this on Day 29 of the lockdown in South Africa due to the COVID-19 pandemic. I’m not sure I have the right words to address the current situation, nor the expertise to talk about it. However, I am good at talking about Android and…
-
Dark Mode Musings: Beware of the Context 🌗
I’ve been working on getting Dark Mode in our app fully supported and I stumbled upon an interesting finding: The Application#applicationContext does not keep information about the theme that you have set via AppCompatDelegate.setDefaultNightMode(), only a View or Activity context has this information stored. After reading through Chris Banes’ articles and watching some great talks…
-
Android: Using Physics-based Animations in Custom Views (SpringAnimation)
Learn how to use physics-based animations in a Custom View implementation for natural looking animations in your app. You’ve used all the standard Android animation techniques, but you find that they sometimes just don’t give you that extra sparkle you are looking for. You’ve wondered how to get more natural looking animations and had no luck…
-
Android Canvas APIs with Kotlin and KTX
Learn how to use the Android KTX extension functions to clean up Canvas drawing code Have you ever wanted to write a Custom View on Android but you were too afraid to deal with X, Y translations on a Canvas object? Well, working with them got a whole lot easier when using Kotlin and the Android…
-
Building Responsive / Resizable Android UIs for ChromeOS 📐📏
Learn how using ViewModels can help create great user experiences on ChromeOS This post originally appeared here. Supporting ChromeOS devices sounds like a large undertaking with many unknowns. If you didn’t know already, ChromeOS allows users to install Android Apps on their devices. This is great news for ChromeOS users since it unlocks a huge amount of apps…
-
Android MotionLayout Tutorial – Collapsing View
MotionLayout is a layout class that extends from ConstraintLayout. MotionLayout has all the features of ConstraintLayout. On top of that, it also provides the ability to easily animate changes to your UI, without needing to know much about UI interactions and the Android Animation Frameworks. Take for example this subtle animation of a view being…
-
Android ConstraintLayout 2.0: ConstraintLayoutStates
With the introduction of ConstraintLayout 2.0, there is an interesting new feature called ConstraintLayoutStates. ConstraintLayoutStates allow you to create a layout with different states and switch between them easily. Typically, most layouts contain a loading state, initial state, end state and error state. Using ConstraintLayoutStates, there is a clean way to switch between these different…
-
ConstraintLayout 2.0: ImageFilterView
Whilst browsing through the various examples online with the new ConstraintLayout 2.0, I stumbled upon ImageFilterView. This got my attention immediately and I decided to investigate further. An ImageFilterView allows you to perform some common image filtering techniques on an ImageView, including saturation, contrast, warmth and crossfade. If you have tried to implement these image filters before, you may have…