1

MKPolyline特定のタイトルのポリライン ( ) を非表示/表示するにはどうすればよいですか?

次のコードでそれらを削除できます。

-(IBAction)hideOverlay:(id)sender
{
for (id<MKOverlay> overlayToRemove in self.mapView.overlays)
 {
    if ([overlayToRemove isKindOfClass:[MKPolyline class]])
    {
        if ([polyline.title isEqualToString:@"Steve"]) {
            [mapView removeOverlay:overlayToRemove];
        }
     }
  }
}

しかし、それらを表示/非表示にするオプションが必要です。

前もって感謝します。

4

1 に答える 1

0

ユーザーがオーバーレイを画面に追加できるようにする場合は、オーバーレイへの参照を取得して を呼び出す必要がありますaddOverlay。彼らがこれを行うことができるのは1つのオーバーレイだけですか? というインスタンス変数を追加するだけremoveableOverlayで、人がボタンをタップしたときに、すべてのオーバーレイを探す必要がなくなり、その 1 つだけで済みます。

[mapView removeOverlay:removeableOverlay];

また

[mapView addOverlay:removeableOverlay];

あるかないかによる。ブール値またはボタンの状態でそれを追跡するか、それを検索mapView.overlaysできます(クラスとタイトルではなく、同等性を確認するだけで済みます)。ある場合は削除でき、ない場合は追加できます。

于 2013-01-31T20:37:12.520 に答える