Skip to content

An assignment prepared for students of the GT iOS Club to test their Swift and SwiftUI skills. By Abdulaziz Albahar.

Notifications You must be signed in to change notification settings

quequest/Assignment2_TodoListApp

 
 

Repository files navigation

Assignment 2 - TodoListApp

The main goal of this assignment is to test your SwiftUI knowledge while ensuring that you're able to adhere to a set of conventions. You have complete control over the design of this sample app, however you must implement the app using the instructions below. Try to be creative! The last SwiftUI tutorial should contain hints to help.

Instructions

  1. You must have two accessible screens: Todo-list screen, Todo-list Item View.
  2. Todo-list screen:
  • Has the header text "Todo-list".
  • Will contain all the tappable todo items added by some user. Tapping on the item should navigate the user to the Todo-list Item View with information regarding this particular item.
  • Has functionality enabling the user to add items (as text) to the todo-list. Hint: the list should be updated the moment a user adds the item.
  1. Todo-list Item screen:
  • Must contain the text of that to-do item.
  • Has functionality enabling the user to edit the text. This can be implemented in several ways on the frontend, we won't restrict you.
  • Optional: display the time this item was added.
  1. REQUIRED features to use in implementation, this list is NOT exhaustive:
  • The given classes/structs, which you have to fill out and edit. They're useful for figuring out the approach.
  • @State
  • @StateObject
  • Environment Objects
  • Protocols: ObservableObject, Identifiable
  • ScrollView (for the list of notes)
  • Navigation
  • Optional: use Enums to aid in implementing optional functionality allowing the user to set a task priority between low-moderate-high.

Git and Github Tips

  • To create your own branch, open this menu, make sure there's a checkmark next to main as below, then type your name into the input box and click on the created button below it.

CleanShot 2023-02-27 at 17 26 04@2x

  • To clone the repo, go to Xcode and click on "Clone an existing project", then paste this page's URL.

  • You can commit and push to your OWN branch as many times as you want, you can do this easily via Xcode simply click on commit first. Once you're done with that, click on push, and make sure you're pushing to YOUR branch.

CleanShot 2023-02-27 at 17 40 59@2x

About

An assignment prepared for students of the GT iOS Club to test their Swift and SwiftUI skills. By Abdulaziz Albahar.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 100.0%