Skip to content

Developing an interactive GUI application in Android with Kotlin, Room, and RXJava

License

Notifications You must be signed in to change notification settings

jharrilim/comp304-assignment2

Repository files navigation

Lab Assignment #2

Purpose: The purpose of this lab assignment is to:

  • Use Android UI controls to develop an interactive mobile application

References: Textbook, ppt slides and Android tutorials (http://developer.android.com/guide/topics/ui/index.html). This material provides the necessary information that you need to complete the exercises.

Be sure to read the following general instructions carefully:

  • This assignment must be completed individually by all the students.

  • You will have to demonstrate your solution in a scheduled lab session and upload the solution on eCentennial through the assignment link. See Lab 1 documentation on naming your Android Studio modules.

Exercise 1

Your client needs an Android application to allow customers to order food using their smart phone. Develop an Android app as described below:

The main screen will display the company logo and a button " Enter".

The second screen allows the customer to choose the food types :

  • Vegetables and legumes/beans
  • Fruit
  • Grain (cereal) foods
  • Lean meats and poultry, fish, eggs, tofu, nuts and seeds and legumes/beans
  • Milk, yogurt cheese and/or alternatives

Use an options Menu control to implement this selection. Display the proper screen with corresponding food items whenever the user selects a food type from the menu. For example, if the user selects Vegetables and legumes/beans food type, the next screen will display different veggies and legumes/beans. Use check boxes to show the food items.

The user may use the menu control to choose another food type, and so on.

The check-out screen displays the selected food items and corresponding prices. It also prompts the user with payment option (cash, credit card, debit card). Use a group of radio buttons to select the payment method.

The next screen asks the user to enter credit/debit card information if the user chooses either of these payment methods.

Use EditText controls and other UI elements to allow the user to enter customer' information: full__name, credit/debit card number. The rest of the fields will be different for each student. For example, you may create fields for favorite food type, favorite food item, favorite app, etc. Create 2-3 fields named as mentioned above. Provide validation for these entries using the proper attributes/methods/constructor for each UI control.

Use TextView objects to create the label components for your UI. Allow the user to use the " Back" key to go back to the previous screen.

Display the order information in the last screen when the user finalizes the order.

Use styles and themes to create a nice look and feel of your app. Use drawable objects to display the logo for the company, food types, food items, etc.

(10% of your final grade)

Evaluation:

Activities :Main activity, Food types menu, Food items activities (one for each food item), check-out activity, final order information activity (all working, proper naming of activities, variables, and methods. Provide comments).Provide an explanation when asked during the demonstration of the app. 50%
Event Handling (proper event handlers) 25%
UI friendliness (proper layout, controls, styles, and themes) 15%
Declaring resources in proper resource files 5%
Innovative features 5%
Total 100%

About

Developing an interactive GUI application in Android with Kotlin, Room, and RXJava

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages