2012-03-20 8 views
0

私はIBActionセンターをアノテーション上のマップビューの領域にしたいと考えています。私もあれば伝える方法を探していますマップ注釈座標の取得方法は?

- (IBAction)findPin:(id)sender { 

    MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } }; 

    region.center.latitude = pinLoc.coordinate.latitude; 
    region.center.longitude = pinloc.coordinate.longitude; 
    region.span.latitudeDelta = 0.001f; 
    region.span.longitudeDelta = 0.001f; 
    [mapview setRegion:region animated:YES]; 
    [mapview setDelegate:self]; 
} 

:私はそれを盗んし、何とかこのように地域の中心部を移動したい

myAnnotation *pinLoc=[[myAnnotation alloc] init]; 
pinLoc.coordinate = mapview.centerCoordinate; 
pinLoc.title = @"Title"; 
pinLoc.subtitle = @"subtitle"; 
[mapview addAnnotation:pinLoc]; 

:注釈は、このようなのMapViewに追加されますピンはポリゴン内にあります。私は、ユーザーの場所を使用して作業しているが、再び、私はピンとの作業を得るためにピンの座標を取得する必要があります。

答えて

1

最も簡単な方法は、アノテーションを追加するときにアノテーションへの参照を保存することです。

たとえば、あなたがタイプmyAnnotationpinToRememberと注釈を追加した後に呼ばれる保持プロパティを宣言することができ、これは後でそれを保存します。そして、

[mapview addAnnotation:pinLoc]; 
self.pinToRemember = pinLoc; 

findPin:で、あなたはどうなる:

if (pinToRemember == nil) 
    return; 

region.center = pinToRemember.coordinate; 


また、マップビューのannotations配列プロパティを検索し、興味のある注釈を探して探すことができますtitleまたはその他のカスタムプロパティの場合これは簡単なfor-loopを使用することで可能です。時々、私は正しい答えを見ることができない
How to determine if an annotation is inside of MKPolygonView (iOS)

+0

:あなたはあなたが作業したが、この答えはまた、有用である可能性がある「ピンがポリゴン内にあるかどう伝える方法」を持っていると言う


私の前に、アンナに感謝します。 StackOverflow上でのあなたの存在は、私の初期のiOS Devのキャリアの中で私を何度も救ってくれました。私は実際にポイントが多角形内にあるかどうかを判断するためにあなたのコードを使用してalrdyです! –

関連する問題