Getting Started with MapKit
In the previous chapter, you learned about table views and table view controllers, and completed the implementation of 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 of a particular restaurant. Apple provides an MKAnnotation
protocol that allows you to associate the classes you create with a specific map location. 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 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...