WPI Computer Science Department

Computer Science Department
------------------------------------------

CS 528 Fall Semester 2023 Project 1
Designing Android Screens (Layouts, Views and Widgets), (10/100 of course grade)
Due date: Thursday, September 14, 2023 (by class time)!!


Overview

The aim of this project is to get you familiar with designing Android screens using layouts, widgets and the webview. This project should be done on Android Studio and each student should do the project by themselves. You may discuss the projects with other classmates or on the Canvas Discussion board but each student will submit their own code for the project. Android Studio should already be installed on your computer or laptop. You can also go to the zoolab and do the assignment there.

Important: The project should be done in Kotlin NOT java.

Preparation

First of all, make sure you've done project 0. Go over my lecture slides 1-2 especially lectures 2a & 2b. Next read chapters 1 & 2 of Head First Android Development and Chapter 1 of Android Nerd Ranch. Try running the code from those chapters (provided below). Read the code examples and make sure you understand the code. Thereafter, you're ready to do your project. I've also provided below how to run code examples from the Android Nerd Ranch book. Note: The code has been thoroughly tested on the latest and most stable version of Android Studio (Giraffe 2022.3.1). You shouldn't encounter errors. If you have problems with any aspects of the project, don't forget to go to office hours and see the graders.

Project Requirements

Design the following 4 screens. Create 4 different Android Studio projects (1 for each screen), which you will put together later and submit them in a single zip file. The 4 screens are:


Screen 1: The following screen is a screen for an app that shows a country's flag and allows users to guess which country has that flag by clicking on the appropriate button. Design the exact screen shown below. The quiz does not have to be functional and the buttons do not need to be clickable. You can use the following image for the [Nicaraguan Flag ] .





Screen 2: The screen below explores clickable images. There are 3 clickable images arranged on the top row of the app screen. You can use any 3 images of your choice for this app (e.g. off the Internet). Your program keeps a running total of how many times you have clicked on each image and displays this running total in boxes below the images as shown. Initially, all 3 "total clicks" are 0. So for instance, for picture 1, the initial message should be "You have pressed picture 0 times". Each time a picture is pressed, increment the counter and display the corresponding updated message.





Screen 3: This screen has 3 buttons at the top and the rest of the screen is filled with a box that displays web content. You can use webView for this part. Each button has a different website URL of your choice hardcoded into it. Pressing each button should load up a different website. E.g. Pressing the button "Website 1" could pull up https://www.google.com. Pressing the button "Website 2" would pull up a different website, etc. Note that the WebView has to be functional for this screen. Website 1 can be set as the initial view when the app starts.

Clicking on the "Website 2" button pulls up a different website:

And clicking on the "Website 3" button pulls up a different website:



Screen 4: Design the following sound settings screen. The checkboxes don't have to be functional. For the image at the top left beside the word "SOUND", use the following image [ HERE ] .





Submitting Your Work

Make sure to double-check that everything works before submitting. Submit all your executable and source files. Each of the screens above should be created in a different Android Studio project. Zip up all 4 folders containing these Android Studio projects into a single zip file and submit your zip file using Canvas. Do not email me your program or submit it via dropbox.

Before submitting MAKE SURE YOUR PROJECT RUNS IN THE LATEST VERSION OF ANDROID STUDIO and can generate all 4 screens before submission. Name your zip file according to the convention FirstName_lastName_hw1.zip


[Feedback] [Search Our Web] [Help & Index]

[Return to the WPI Homepage] [Return to CS Homepage]

mailto:emmanuel@cs.wpi.edu