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...