Chapter 16: Getting Started with MapKit
In the previous chapter, you learned about table views and table view controllers, and then implemented the Locations screen. It now displays a list of restaurant locations.
In this chapter, you'll display restaurant locations on the Map screen using custom pins. When you tap on a pin, you'll see a screen that shows details about a particular restaurant. Apple provides the MKAnnotation protocol, which allows you to associate the classes you create with a specific map location. First, you'll create a new class, RestaurantItem, that conforms to this protocol. Next, you'll create MapDataManager, a data manager class that loads restaurant data from a .plist file and puts it into an array of RestaurantItem instances. You'll then create a new DataManager protocol to read .plist files and update both the MapDataManager and ExploreDataManager classes to avoid redundant code (refactoring). After that, you'll create a MapViewController...