GithubHelp home page GithubHelp logo

shoestoreapp'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.

shoestoreapp's People

Contributors

mohammadashrf 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.