On the design and layout side of things, the focus here is on balancing the screen elements in a way that’s pleasing to the eye. To add the finishing touches we will also be styling the top status bar on newer devices , and utilising floating labels from the design library (implemented via the TextInputLayout tag). Pretty much everything has been taken care of for you: Full demo and code examples on Github. Interface locking to prevent back button when the Login Activity is displayed. Custom ProgressDialog to signify loading state. Conforms to the Material design spec. Floating labels from the design library. Form user input validation. Custom status bar style. Faux authentication methods for testing each Activity. All that remains is to implement your own authentication logic - weather it be via HTTP, SQL or some other method. Get the Code Login Activity