$30
CptS 479 Mobile Application Development
Homework 5
General Instructions: Put the entire app directory into one zip file and submit as an attachment
under Content à Homework 5 for this course on the Blackboard Learn system by the above
deadline. Note that you may submit multiple times, but only the most recent entry submitted before
the above deadline will be graded.
For this homework you will modify the QuizApp from HW4 by replacing the main view with a
table view that lists all the quiz questions in a table. The app should still be able to add questions
to the quiz by segueing to the AddQuestion view. The app will also be able to view a quiz question
by tapping on that row in the table. See screenshots below. Specifically,
1. Replace the main Quiz view with a Table View Controller, add it as the root view controller
of the navigation controller, and create and assign a new UITableViewController class to
the Table View Controller. Implement the appropriate delegate and data source methods.
2. Set the Quiz Table view prompt and title appropriately. Put the “Add” bar button item back
into the navigation item and add a segue from the button to the AddQuestion view.
3. The functionality of the AddQuestion view should be the same as in HW4, although when
a new quiz question is saved, it should appear at the bottom of the table. This HW5 app
will not actually perform the quiz.
4. The prototype cell just needs to display the question prompt, so you can use the Basic style
for the table view cell. Although you are welcome to create your own custom table view
cell class.
5. When the user taps on a row in the table, the app should segue to a View Question view
controller that displays the prompt and answers for the corresponding question from the
table, where the correct answer is highlighted in red.
6. Implement the swipe-left-to-delete functionality in the table to enable deletion of individual
questions.
7. Your app should add at least three quiz questions at the start.
8. Be sure that auto layout constraints are set so that the view elements are appropriately
displayed with no overlap regardless of device orientation.
2
StoryBoard:
Simulator:
3