Code Monkey home page Code Monkey logo

shoe-store-app's Introduction

The Shoe Store

This project will consist of five screens. You don't have to create a shoe store, you can use any other item as long as you create the following screens. You will be creating:

  1. Login screen: Email and password fields and labels plus create and login buttons
  2. Welcome onboarding screen
  3. Instructions onboarding screen
  4. Shoe Listing screen
  5. Shoe Detail screen for adding a new shoe

Getting Started

Open the starter project in the latest stable version of Android Studio.

Open the starter project in Android Studio

Steps

  1. Open the starter project in Android Studio

2. Add the navigation libraries to the app build.gradle file

3. Add the safe-arg plugin to the main and app build.gradle file

4. Create a new navigation xml file

5. Create a new Login destination.

  • Include email and password labels
  • Include email and password fields
  • Create buttons for creating a new login and logging in with an existing account
  • Clicking either button should navigate to the Welcome Screen.

6. Create a new Welcome screen destination that includes:

  • A new layout
  • At least 2 textviews
  • A navigation button with actions to navigate to the instructions screen

7. Create a new Instruction destination that includes:

  • A new layout
  • At least 2 textviews
  • A navigation button with actions to navigate to the shoe list screen

8. Create a class that extends ViewModel

  • Use a LiveData field that returns the list of shoes

9. Create a new Shoe List destination that includes:

  • A new layout
  • A ScrollView
  • A LinearLayout for Shoe Items
  • A FloatingActionButton with an action to navigate to the shoe detail screen

10. In MainActivity, setup the nav controller with the toolbar and an AppBarConfiguration.

11. Create a new Shoe Detail destination that includes:

* A new layout
* A TextView label and EditView for the
  * Shoe Name
  * Company
  * Shoe Size
  * Description
* A Cancel button with an action to navigate back to the shoe list screen
* A Save button with an action to navigate back to the shoe list screen and add a new Shoe to the Shoe View Model

12. Make sure you can’t go back to onboarding screens

13. In the Shoe List screen:

* Use an Activity level ViewModel to hold a list of Shoes (use by activityViewModels)
* Observe the shoes variable from the ViewModel
* Use DataBindingUtil to inflate the shoe_list layout
* Add a new layout item into the scrollview for each shoe.

shoe-store-app's People

Contributors

moorjon2 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.