Kodeco Forums

Responsive UI Tutorial for Android

Make your Android app feel at home on any device. Learn how to build a responsive UI that looks and works well across all devices and screen sizes.


This is a companion discussion topic for the original entry at https://www.raywenderlich.com/683-responsive-ui-tutorial-for-android

That’s an excellent tutorial. Thanks!

One side note: I may be wrong, but usually responsive UI is all about threads and offloading the main thread.

This article is all about adaptable UI, and it gives some great insights.

Thanks @rommex73, glad you found it helpful!

I think you’re right, it could have been called Adaptive UI instead of Responsive UI. The term Responsive UI also stems from web design where similar APIs to the ones covered in the tutorial (flexbox for example) are used to design layouts that respond to the screen width changing (browser window). Although device dimensions don’t usually change (unless it’s a folding screen!), the layout editor in Android Studio does respond to dimension changes as the handle in the lower right hand corner is moved around. In this instance, I would say that it’s more responsive than adaptive. That’s only my interpretation of it. But according to this website:

Adaptive web design is different from responsive design in that there isn’t one layout that always changes. Instead, there are several distinct layouts for multiple screen sizes. And the layout used depends on the screen size used. For example, there could be a specific layout for mobile phones, tablets, and desktop computers – each of which are made in advance. These three designs wait on standby until someone visits the site. The site detects the type of device used, and delivers the pre-set layout for that device. So instead of a single ball going through several different-sized hoops, you’d have several different balls to use depending on the hoop size.

which is definitely the case here. So I guess it could also be called Adaptive UI :thinking:

Great guide from here, helping with my school project about material design and the adaptive part of it.
I just got a “Cannot resolve sybol” error with all the “.elemtData” used in the ArrayList.java and in the same class it gives me a cannot acces class error on “private class ListItr extends Itr implements ListIterator”
This happens even in the source code download, and seems to make my program crash when i put my phone to landscape mode.
And sorry if it is bad formulated english :open_mouth:

Thank you for the tutorial, I am a beginner Android developer, I feel the qualifiers are the main enabler for Responsive UI. I still need to read more about FlexBox, and Vector Drawables as well as other uses of qualifiers. I mean, one can still create an app, which behaves this way without using VD and FlexBox. It may be more work, and may not come out as presentable, but it seems to me that the qualifiers are what make the app responsive. Unless I misunderstood the definition of responsive UI, it is about presenting the more appropriate layout to the screen, device, orientation, or perhaps other attributes of the client. Am I right?
Regards-
Sean

This tutorial is more than six months old so questions are no longer supported at the moment for it. We will update it as soon as possible. Thank you! :]