Skip to content

stacklens/100-days-of-swift-5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

100 Days of Swift 5

More than 16 tiny projects to help you quickly learn how to build a simple iPhone app.

👉🏼 中文传送门 / Chinese Version 👈🏼

Similar with samvlu's 100-days-of-swift, but write by Swift 5. Some resource comes from Edison Hsu.

Code environment:

  • Swift 5
  • Xcode 11.3.1
  • Simulator iPhone 11
  • IOS 13.2

These projects does not include an explanation of the basics of Swift. If you do not understand how the code works, please learn the following tutorial first:

Happy programming!

Tips: It may cause compilation errors if the swift project folder contains spaces. so don't to do that. (I found it after Day 22 😭)

The code is different from the samvlu's version because I write it myself. Obsolete projects have been deleted and similar projects have been merged together.

Day 1 - Tap Counter

gif

What I Learned:

  • How to use UIButton & UILabel
  • IBOutlet & IBAction
  • Custom Navigation item

Day 2 - Tap Or Hold Counter

gif

What I Learned:

  • UILongGestureRecognizer

Day 3 - Tip Calculator

gif

What I Learned:

  • UISlider
  • Text Field
  • UITapGestureRecognizer
  • How to make code clean with Extension

Day 4 - Basic Table View

gif

What I Learned:

  • Build Custom Table View Controller
  • Work with Nav Bar Buttons
  • Populate Table Rows with local data

Day 5 - Getting Current Date and Time

gif

What I Learned:

  • Work with Date()
  • Hot to use DateFormatter with build in dateStyle and timeStyle

Day 6 - Passing Data to Another View

gif

What I Learned:

  • Send data through segue

Day 7 - Swipe Down to Dismiss Keyboard

gif

What I Learned:

  • How to use UISwipeGestureRecognizer
  • Auto-launch the Keyboard when the View loads

Day 8 - Add Photo from Camera Roll

gif

What I Learned:

  • UIImagePickerController
  • Scale image and append it to TextField

Day 9 - Pull to Refresh TabelView

gif

What I Learned:

  • Hot to refresh data

Day 10 - Add New Item

gif

What I Learned:

  • How to show keyboard when view appear
  • How to pass data back to view controller by closure

Day 11 - Sticky Section Headers

gif

What I Learned:

  • Build sticky section tableview
  • Use Array to index Dictionary

Day 12 - Tableview Jumpbar

gif

What I Learned:

  • How to config dataSource
  • Learn Create an Indexed Table View

Day 13 - Dynamic Data for Each Cell

gif

gif

gif

What I Learned:

  • Comprehensive application for UITableViewController
  • Create/Update/Delete/Review Data in tableView
  • Read/Write json data to file
  • MVC design concept
  • Transmit information by segue/closure
  • How to use CocoaPod to install frameworks

Day 14 - Set Current Location

gif

What I Learned:

  • Get current location

Day 15 - Setting The Date

gif

What I Learned:

  • How to format date from DatePicker

Day 16 - Save Date Location Photo

gif

What I Learned:

  • Create an Accessory Input View
  • Use icons for UIButtons
  • Pass data back to rootView

Day 17 - Basic Collection View

gif

What I Learned:

  • Baic using of UICollectionViewController
  • Drag and Drop in collection view
  • Change the layout of collection view
  • Basic animation

Day 18 - Drag and Drop Item Out of CollectionView

gif

What I Learned:

  • Pass data from collection to another view by drag and drop

Day 19 - Draw Something

gif

What I Learned:

  • Basic Drawing with CAShapeLayer and UIBezierPath

Day 20 -Animate It

gif

What I Learned:

  • Basic animation with CAAnimation && Transition && UIView.animate
  • Store local variables through closures

Day 21 - Tab Bar and Modal

git

What I Learned:

  • Basic use of Alert & ActionSheet & Popover
  • Pass data between tab with SceneDelegate

Day 22 - Persistence And CoreData

gif

gif

png

What I Learned:

  • Data Persistence by CoreData
  • CURD in CoreData
  • Popover in ios

Day 23 - Into The Dark

gif

What I Learned:

  • Change Interface style by code
  • Use Semantic Colors
  • Custom dynamic Colors

Day 24 - Local Notification

gif

What I Learned:

  • Basic use of Local notification
  • Local notification with actions

About

More than 16 tiny projects, write by swift 5.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages