This repo contains exercises in Swift from the book iOS Programming: The Big Nerd Ranch Guide (5th Edition).
The list below shows all tasks for every part and links to code with my solutions (short idea description is written in comments).
- A simple iOS Application (no tasks)
- The Swift Language (no tasks)
-
Views and the View Hierarchy
Bronze Challenge: More Auto Layout Practise (Remove all of the constraints and add them back in - no code :) -
Text Input and Delegation
Bronze Challenge: Dissallow Alphabetic Characters -
View Controllers
Silver Challenge: Dark Mode -
Programmatic Views
Bronze Challenge: Another Tab
Silver Challenge: User's Location
Gold Challenge: Dropping Pins -
Localization
Bronze Challenge: Another Localization -
Controlling Animations
Bronze Challenge: Spring Animations
Silver Challenge: Layout Guides -
UITableView and UITableViewController
Bronze Challenge: Sections
Silver Challenge: Constant Row
Gold Challenge: Customizing the Table (height and font changes made in Main.storyboard) -
Editing UITableView
Bronze Challenge: Renaming the Delete Button
Silver Challenge: Preventing Reordering
Gold Challenge: Really Preventing Reordering -
Subclassing UITableViewCell
Bronze Challenge: Cell Colors
-
StackViews
Bronze Challenge: More Stack Views (Quiz, WorldThrotter - solutions in Main.storyboard)
-
UINavigationController
Bronze Challenge: Displaying a Number Pad
(Main.storyboard -> DetailViewController -> ValueTextField -> Attribure Inspector -> Keyboard Type -> Decimal Pad)
Silver Challenge: A Custom UITextField
Gold Challenge: Pushing More View Controllers (new VC) -
Camera
Bronze Challenge: Editing an Image
Silver Challenge: Removing an Image
Gold CHallenge: Camera Overlay (in progress)
-
Saving, Loading, and Application States
Bronze Challenge: PNG
-
Size Classes
Bronze Challenge: Stacked Text Field and Labels
(Main.storyboard -> StackView -> Attribute Inspector -> Axis -> "+" -> hC, wAny -> Vertical)
-
Touch Events and UIResponder
Silver Challenge: Colors (the angle at which a line is drawn dictates its color)
Gold Challenge: Circles (use two thingers to draw circle)
-
UIGestureRecognizer and UIMenuController
Silver Challenge: Mysterious Lines (there was some bug fixes)
Gold CHallenge: Speed and size (line thickness depends on drawing velocity)
Platinum Challenge: Colors Have a three-finger swipe upward bring up a panel that shows colors. Selecting one of those colors should make any lines you draw afterward appear in that color.
-
Web services
Bronze Challenge: Printing the Response Information
-
Collection views
Gold Challenge: Creating a Custom Layout (Display the photos in flipbook)
-
Core Data
Bronze Challenge: Photo View Count
-
Core Data Relationships
Silver Challenge: Favorites


