Projects 7, 8, and 9 were the first in the series I consider to be “hard”: you had to parse JSON data, you had to create a complex layout for 7 Swifty Words, and you took your first steps towards creating multithreaded code – code that has iOS do more than one thing at a time.
None of those things were easy, but I hope you felt the results were worth the effort. And, as always, don’t worry if you’re not 100% on them just – we’ll be using
Codable and GCD more in future projects, so you’ll have ample chance to practice.
UITabBarController, which is another core iOS component – you see it in the App Store, Music, iBooks, Health, Activity, and more.
UITabBarItemthat has a title and icon. If you want to use one of Apple’s icons, it means using Apple’s titles too.
Datato load a URL, with its
contentsOfmethod. That then got fed to
JSONDecoderso that we could read it in code.
WKWebViewagain, this time to show the petition content in the app. This time, though, we wanted to load our own HTML rather than a web site, so we used the
didSet. This meant that whenever the
scoreproperty changed, we automatically updated the
scoreLabelto reflect the new score.
DispatchQueue, and also met the
performSelector(inBackground:)method, which is the easiest way to run one whole method on a background thread.
enumerated()for looping through arrays,
joined()for bringing an array into a single value, and
replacingOccurrences()to change text inside a string.
SPONSORED Let’s face it, SwiftUI previews are limited, slow, and painful. Judo takes a different approach to building visually—think Interface Builder for SwiftUI. Build your interface in a completely visual canvas, then drag and drop into your Xcode project and wire up button clicks to custom code. Download the Mac App and start your free trial today!
Link copied to your pasteboard.