0% found this document useful (0 votes)
25 views2 pages

CSE 489 Assigment L1 v2 7

The assignment focuses on creating an Android app called VangtiChai that allows users to enter a money amount using a numeric keypad and calculates change in terms of Taka notes. Students must implement a portrait and landscape layout that works on phones and tablets using ConstraintLayout. The app should display an entered amount, change table, and numeric keypad that updates as digits are entered from right to left. Layouts must be responsive for different screen sizes and orientations.

Uploaded by

rezaewewqewqe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views2 pages

CSE 489 Assigment L1 v2 7

The assignment focuses on creating an Android app called VangtiChai that allows users to enter a money amount using a numeric keypad and calculates change in terms of Taka notes. Students must implement a portrait and landscape layout that works on phones and tablets using ConstraintLayout. The app should display an entered amount, change table, and numeric keypad that updates as digits are entered from right to left. Layouts must be responsive for different screen sizes and orientations.

Uploaded by

rezaewewqewqe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

CSE 489: Mobile Application Development


Assignment 1

Objective:
The assignment focuses on layouts, especially the ConstraintLayout, general Android
programming concepts, such as the activity lifecycle and designing for different screen sizes and
orientations.

Instructions:
Your task is to create an Android app (VangtiChai) that lets you enter a money amount via a
numeric keypad implemented from scratch (to practice layouts!), and calculates change for that
amount in terms of Taka Notes (500,100,50,20,10,5,2,1).

You can make your own choice between Kotlin, Java and Flutter, but you are welcome to try
Kotlin on your own initiative), and for minimum API level, you can set "API 21: Android 5.0
(Lollipop)" (or lower if need be).

Here is what you have to implement:

1. In portrait mode, your app's main view shows a numeric keyboard consisting of buttons
for the 10 digits and a clear button in the configuration shown below. To the left of it,
there should be a table listing for the notes that make up the change for any entered
amount. In the top part of the screen, the entered amount is shown, next to a "Taka:"
label.
2. When you tap any button, the corresponding digit is added to your current amount from
the right (this is to make entry as easy as possible for you to program). I.e. if you type the
digits '2', '3', and '4' in this order, you first will see an amount of 2, then 23, and then 234.
3. When turning your device to landscape mode, the current interface should save state
(keep the currently entered amount and change list), and present a slightly altered layout:
4. The layouts on your app should work gracefully on phones and tablets. Test with the
emulator on at least a Pixel XL phone (see screenshots above), and a Nexus 10 tablet (see
screenshots below).
Hints & Pointers:

This assignment can be solved by using alternative layouts. Read the following sections of the
Android Developer guidelines:
• https://developer.android.com/guide/practices/compatibility
• https://developer.android.com/training/multiscreen/screensizes

While you are allowed to use any layout type you wish to use, you should really familiarize
yourselves with the ConstraintLayout.
• https://developer.android.com/training/constraint-layout
• https://developer.android.com/reference/android/support/constraint/ConstraintLayout#de
veloper-guide

It is sufficient for full credit to create layouts that work well on a Pixel XL phone (a 411x731dp
screen) and a Nexus 10 tablet(800x1280dp) in both portrait mode and orientation mode (i.e. 4
different layouts).

Even though we will only test your app on these four screen sizes/orientations, you should check
that you get reasonable results on other devices as well. List in your README.txt file what other
device/screen types you have tested.

Do not hardcode any values in the layout xml files. When using specific text sizes, padding, and
margin values for any of your layout alternatives, create them in sizes.xml in the values folder
and refer to those.

You might also like