Book Image

iOS 16 Programming for Beginners - Seventh Edition

By : Ahmad Sahar, Craig Clayton
Book Image

iOS 16 Programming for Beginners - Seventh Edition

By: Ahmad Sahar, Craig Clayton

Overview of this book

With almost 2 million apps on the App Store, iOS mobile apps continue to be incredibly popular. Anyone can reach millions of customers around the world by publishing their apps on the App Store, which means that competent iOS developers are in high demand. iOS 16 Programming for Beginners, Seventh Edition, is a comprehensive introduction for those who are new to iOS, covering the entire process of learning the Swift language, writing your own app, and publishing it on the App Store. This book follows a hands-on approach. With step-by-step tutorials to real-life examples and easy-to-understand explanations of complicated topics, each chapter will help you learn and practice the Swift language to build your apps and introduce exciting new technologies to incorporate into your apps. You'll learn how to publish iOS apps and work with new iOS 16 features such as Mac Catalyst, SwiftUI, Lock Screen widgets, WeatherKit, and much more. By the end of this iOS development book, you'll have the knowledge and skills to write and publish interesting apps, and more importantly, to use the online resources available to enhance your app development journey.
Table of Contents (34 chapters)
1
Part I: Swift
11
Part II: Design
16
Part III: Code
26
Part IV: Features
32
Other Books You May Enjoy
33
Index

Updating the ReviewFormViewController class to save reviews

The Save button in the Review Form screen currently just prints the review to the Debug area when tapped. To save reviews, you’ll need to modify the onSaveTapped(_:) method to save a review to the persistent store when the Save button is tapped. Follow these steps:

  1. Click the ReviewFormViewController file in the Project navigator. Add the following property to the ReviewFormViewController class before the outlet declarations to store the restaurant identifier:
    var selectedRestaurantID: Int?
    
  2. Create a private extension, move the onSaveTapped(_:) method into it, and modify it as follows:
    private extension ReviewFormViewController {
       @IBAction func onSaveTapped(_ sender: Any) {
          var reviewItem = ReviewItem() 
          reviewItem.rating = ratingsView.rating
          reviewItem.title = titleTextField.text
          reviewItem.name = nameTextField.text
          reviewItem.customerReview ...