Skip to content

aysilsimgekaracan/Hacking-With-iOS-SwiftUI

Repository files navigation

If you are looking for Hacking with iOS (UIKit), visit my other repository

Hacking-With-iOS SwiftUI

Hacking With iOS: SwiftUI Edition Course by Paul Hudson, Hacking With Swift

My personal answers to Wrap ups, Challenges, Milestones...

Project 1: WeSplit

p1-0001

Challenge 1: Converter

  • Challenge in Day 19 from 100 Days of SwiftUI.
  • Length conversion app with Apple's dedicated Unit conversion functionality, Measurement.

c1-0001

Project 2: Guess the Flag

Challenge 1&2 Challenge 3
p2-0001 p2-0002

Project 3: Views and Modifiers

Go back to project 1 and use a conditional modifier to change the total amount text view to red if the user selects a 0% tip. Go back to project 2 and replace the Image view used for flags with a new FlagImage() view that renders one flag image using the specific set of modifiers we had. Create a custom ViewModifier (and accompanying View extension) that makes a view have a large, blue font suitable for prominent titles in a view.
p3-0001 p3-0002 p3-0003

Project 4: BetterRest

Challenges
  • Replace each VStack in our form with a Section, where the text view is the title of the section.
  • Replace the “Number of cups” stepper with a Picker showing the same range of values.
  • Change the user interface so that it always shows their recommended bedtime using a nice and large font. You should be able to remove the “Calculate” button entirely.
  • p4-0001

    Project 5: Word Scramble

    Challenges
  • Disallow answers that are shorter than three letters or are just our start word.
  • Add a toolbar button that calls startGame(), so users can restart with a new word whenever they want to.
  • Put a text view somewhere so you can track and show the player’s score for a given root word. How you calculate score is down to you, but something involving number of words and their letter count would be reasonable.
  • Word Scramble Alert
    p5-0001 p5-0002

    Project 6: Animation

    Challenges
  • When you tap a flag, make it spin around 360 degrees on the Y axis.
  • Make the other two buttons fade out to 25% opacity.
  • Add a third effect of your choosing to the two flags the user didn’t choose – maybe make them scale down? Or flip in a different direction? Experiment!
  • p6-0001

    Project 7: iExpense

    Challenges
  • Use the user’s preferred currency, rather than always using US dollars.
  • Modify the expense amounts in ContentView to contain some styling depending on their value – expenses under $10 should have one style, expenses under $100 another, and expenses over $100 a third style. What those styles are depend on you.
  • For a bigger challenge, try splitting the expenses list into two sections: one for personal expenses, and one for business expenses. This is tricky for a few reasons, not least because it means being careful about how items are deleted!
  • iExpense
    p7-0001

    Releases

    No releases published

    Packages

    No packages published

    Languages