まず、これらのタイプの質問に答えるために Apple ドキュメントを掘り下げる方法を学ぶ必要があります。私は通常、XXX クラス リファレンスまたは XXX 開発者ガイドを検索することから始めます。
mapview は MKMapView オブジェクトです。ここを参照してください: http://developer.apple.com/library/ios/#DOCUMENTATION/MapKit/Reference/MKMapView_Class/MKMapView/MKMapView.html
userLocation は、ユーザーの現在の場所を返します。それらのドキュメントから:
userLocation
The annotation object representing the user’s current location. (read-only)
@property(nonatomic, readonly) MKUserLocation *userLocation
次に、コードはユーザーの位置の座標を取得し、緯度と経度をログアウトします。
最後に、デリゲートを self に設定すると、このクラスが MKMapViewDelegate プロトコルのコールバックを実装することになります。それらのドキュメントから:
delegate
The receiver’s delegate.
@property(nonatomic, assign) id<MKMapViewDelegate> delegate
Discussion
A map view sends messages to its delegate regarding the loading of map data and changes in the portion of the map being displayed. The delegate also manages the annotation views used to highlight points of interest on the map.
The delegate should implement the methods of the MKMapViewDelegate protocol.
デリゲートとは何かについては、こちらを参照してください: デリゲートは xcode ios プロジェクトで正確に何をしますか?
そのため、コールバックを使用すると、マップ ビューのパイプライン実行にコードを挿入したり、viewForAnnotation などのデータを提供したりできます。
MKMapVeiwDelegate のドキュメント (mapview のコールバック) は次のとおりです。
http://developer.apple.com/library/ios/#DOCUMENTATION/MapKit/Reference/MKMapViewDelegate_Protocol/MKMapViewDelegate/MKMapViewDelegate.html#//apple_ref/occ/intf/MKMapViewDelegate