Android Material Design Source Code Free Download

Android UI,Layout & Material Design Tutorial, Examples And Code

Feb 21, 2020 Most of UI problem today is hard to convert UI design concept into native source code. So we try to explore and research android material design UI as similar as its guidelines design. We bring Material design to the next level. This UI template ready to use and support your projects, you can pick some part you like and implement it into your code.

Android UI designing can be done either in XML or programmatically in application. But the Android UI designer mostly prefer XML for defining UI because it separate the presentation from the code and makes easier to visualize, manage, edit and debug the App.

Here our in depth tutorial will teach you Android UI designing step by step starting with XML basic, layout, widgets and attributes with examples. Following it you will learn different UI Design techniques, patterns & principles and finally we will show you lots of examples where we will discuss designing of different Apps from scratch to finish.

Prerequisites For Designing Android UI:

Android Studio And SDK:

Android Studio is the official IDE for developing Android App created by Google. It has a very simple layout editor which support drag and drop for designing UI where one can drag layout, widgets, text fields etc. and drop it on the Virtual mobile screen to design Android UI. It also has the properties option where one can easily fill attribute like color, text etc to give attractive and pretty look to UI. The Studio also has Text option where one can see the XML code of the UI and edit it.

If you are new to it then check our Android Studio guide.

Android Designing Tutorial:

New to Android UI? Begin from here.

XML In Android

  • First understand basics of XML In Android

Layout in Android:

Layout – Layout are used to define the actual UI(User interface) of our application. It holds all the elements (i.e. views) or the tools that we want to use in our application. For example, TextView, Button and other UI elements.

Types Of Layout And Few Important ViewGroup In Android

Also Read: Nesting Of Layout in Android

Adapter In Android (Very Important To Learn)

Adapter – Adapter acts as a bridge between UI component and data source that helps us to fill data in UI component. It holds the data and send the data to an Adapter view then view can takes the data from the adapter view and shows the data on different views like as ListView, GridView, Spinner etc.

Different types of Adapter in Android:

Important Android UI Tutorials

List of all miscellaneous Android UI tutorials

Android UI Tutorial
Topics (Follow the link to read tutorial)Description
ListViewIt helps in displaying the data in the form of a scrollable list.
GridViewIt display items in two dimensional scrolling grid (rows and columns), the grid items are not necessarily predetermined but they are automatically inserted to the layout using a ListAdapter.
ScrollView And HorizontalIt is used to scroll the items in vertical direction and Horizontal ScrollView scroll the items in horizontal direction
SpinnerSpinner provides a quick way to select one value from a set of values. Android spinners are nothing but the drop down-list seen in other programming languages.
Custom SpinnerWhen we want to display a spinner item with image, text etc
TextViewIt display text to the user
EditTextIt provide an input or text field where user can enter something like his name details, phone number etc
ButtonIt is a push button which can be clicked, or pressed by the user to perform an action
ImageViewIt is used to display an image file in application
ImageButtonIt is used to display a normal button with a custom image in a button
CheckBoxIt is a type of two state button either unchecked or checked in Android. We can use it in to take survey in Android app where we will list few options and allow user to choose using CheckBox.
SwitchIt is off/on button which indicate the current state of Switch. It is commonly used in selecting on/off in Sound, Bluetooth, WiFi etc.
RadioButton And RadioGroupIn Android, RadioButton are mainly used together in a RadioGroup. In RadioGroup checking the one radiobutton out of several radio button added in it will automatically unchecked all the others.
RatingBarIt is used to get the rating from the app user.
WebViewIt is a view which is used to display the web pages in application.
AutoCompleteTextViewIt is a view i.e similar to EditText, except that it displays a list of completion suggestions automatically while the user is typing.
MultiAutoCompleteTextViewMultiAutoCompleteTextView is similar to AutoCompleteTextView except that it can hold multiple string words value at single time
ProgressBarIt is used to display the status of work being done like analyzing status of work or downloading a file etc.
TimepickerIt is a widget used for selecting the time of the day in either AM/PM mode or 24 hours mode
DatePickerIt is a widget used to select a date by day, month and year
Calendar ViewIt is used for displaying Calendar and selecting dates
AnalogClock, DigitalClock And TextClockAnalogClock is a two handed clock one for hour indicator and the other for minute indicator and DigitalClock & TextClock both looks like your normal digital watch on hand which displays the hours minutes and seconds in digital format
SeekBarIt is an extension of ProgressBar that adds a draggable thumb, a user can touch the thumb and drag left or right to set the value for current progress
ExpandableListViewIt is a View that shows items in a vertically scrolling two level list
ChronometerIt implements a simple timer
ZoomControlsIt display simple set of controls that is used for zooming and provides callback to register for events
CheckedTextViewIt is an extension of normal TextView that supports the checkable interface and displays it
VideoViewIt is used to display a video file
TabHostIt is a Container for tabbed window view. Whenever we need to enter or display a lot of information in one activity. A simple and effective method is to use tabs in your interface form which is done using TabHost in Android.
SearchViewIt provide search user interface where users can enter a search query and then submit a request to search provider
SlidingDrawerIt is used to hide the content out of the screen and allows the user to drag a handle to bring the content on screen
TextSwitcherIt is used to animate a label(i.e. text) on screen
ViewSwitcherIt is used for switching between views which can hold only two child views for switching
ViewFlipperViewSwitcher can hold only two child views but ViewFlipper can holds two or more child views and show one at a time
ViewStubIt is a zero sized invisible View that can be used to lazily inflate layout resource at runtime
GalleryIt is a view used to show items in a center locked, horizontally scrolling list and user will select a view and then user selected view will be shown in the center of the Horizontal list
CountDownTimerCountDownTimer in Android is used to set a countdown based on interval set by you and it will stop when the time has come in future.
Alert DialogAlert Dialog in an android UI prompts a small window to make decision on mobile screen. Sometimes before making a decision it is required to give an alert to the user without moving to next activity.
ProgressDialogAndroid Progress Dialog is a UI which shows the progress of a task like you want user to wait until the previous lined up task is completed and for that purpose you can use progress dialog.
HTML in AndroidIn Android, many times while designing an application we might be in a situation where we would like to use HTML content and display in our App screen. It may be to display some static content like help, support, FAQ and others pages.

What’s Next Tutorial To Learn:


If you already know how to create Android Apps, you may want to look into the open source Android apps to boost your android development skills. By reviewing source codes of open source Android apps, you can learn how to build better apps.

Page Contents

  • Free Open Source Android Apps

Android Material Design Source Code Free Download Pdf

Free Open Source Android Apps

To help you get started, we have a compilation of 10 Free Open Source Android Apps in this post below. As a learning purpose, use these free android apps source codes and improve your Android development skill.

1. Simple Calendar for Android

Android material design source code free download pdf

If you were looking to learn Kotlin, then this calendar app is probably one of the best ways to start. This app makes it perfect to get your hands dirty learning a completely new language for developing Android apps. You can also learn to make custom desktop widgets for Android.

Difficulty: Beginner

Download from Github | Demo – Play Store

Android Material Design Source Code Free Download For Pc

2. Amaze File Manager for Android

A file manager is a very common Android app that you can find on almost any Android device. Though building a file manager is quite difficult to get it right on all Android platforms and all devices. You can learn how to perform proper file handling on SD cards with this app source code.

Difficulty: Intermediate

Download – Github | Demo – Play Store

3. LeafPic – Photo gallery Android App

Android Projects With Source Code Download

If you are wondering how Photo and Video gallery apps for android are made, LeafPic is one of the best open source gallery apps for Android you can try. If you are a beginner android developer, It is perfectly suitable for you to understand.

Difficulty: Beginner

Download – Github | Demo – Play Store

Android Material Design Source Code free. download full

4. PhotoAffix – Android Photo App

This open source android app is ideal for any beginner android developer who wants to learn the basics of Android Development. You can use this Android photo app to stitch photos vertically or horizontally. You can also learn to make some simple yet useful custom views which can help you to get your foundation ready so that you can later move on to creating some really complex views in future.

Difficulty: Beginner

Download – Github | Demo – Play Store

5. MovieGuide Android APP

Android Material Design Source Code Free Download For Mac

This is one of the best open source android apps which will help you to list the popular movies with their trailers and reviews. The app showcases some really cool development stuff like MVP, Uncle Bob’s Clean Architecture, gives the sweet taste of RxJava and dependency injection using Dagger 2.

Download Android Source Code

Difficulty: Intermediate

6. Minimal ToDo

This todo app source code is also recommended for a beginner developer. With this very simple yet project, you can learn most of the basic and fundamental aspects of Android development.

Difficulty: Beginner

Download – Github | Demo – Play Store

7. Timber – Music Player Android App

Timber is fully featured music player for Android. If you want to build your own music player or any music related app, then this is the project you need to look at. The project is very active in development, it might be a bit difficult for you if you are a beginner but it should be really interesting for any intermediate or advanced level Android developer.

Difficulty: Advanced

Download – Github | Demo – Play Store

8. InstaMaterial – Instagram Clone App

If you are looking to improve your Material Design skills, then InstaMaterial – Instagram clone app source code can help you. InstaMaterial tries to replicate parts of the Instagram app in beautiful Material Design. There are lots of Material Design elements, animations and transitions used in this app which you can learn and implement in your own Instagram clone project.

Difficulty: Beginner

9. Travel Mate – Android Travel App

If you want to learn to develop a location-based Android app, then Travel mate is probably the best open source travel app to start with. You can start travel app project with this open source android app. The Travel Mate – Android Travel app provides users with all necessary features that most of the travel apps offer. From choosing the destination to making all the bookings and organizing the trip, all these features are already included in this free android travel app source code.

Difficulty: Intermediate

10. Pedometer Android APP

A simple, light-weight pedometer app which uses the hardware sensor to calculate the steps taken with almost no impact on the battery performance of the device. It is a good project to start learning step tracking, but the coding standards and design are not good enough to be followed.

Difficulty: Beginner

Use this premium Wallpaper Android App Source Code to create 4k Wallpaper Apps for Android.