IOSでマップ全体(MKMapView)に対するユーザー操作を無効にするにはどうすればよいですか?ズーム、タップなどを無効にして、静的な地図を表示したいだけです。 [self.mapView setUserInteractionEnabled:NO]
が機能しませんでした。 Google経由で有効な解決策が見つからないか、スタックのその他の回答が見つかりません(有効な回答が見つかった場合はリンクをクリックしてください。)。 iOS 5をターゲットにします。これを行う簡単な方法があるはずです。
重要なのは、次のようなズームとスクロールを無効にすることです。
self.mapView.zoomEnabled = false;
self.mapView.scrollEnabled = false;
self.mapView.userInteractionEnabled = false;
これは、次のようにInterface Builderで実行できます。
この小さなハックはどうですか!フレームの詳細がすべて同じUIView
の上にMKMapView
を置くだけです。また、このビューのbackgroundColor
はclearColor
である必要があります。
MKAnnotationViewのenabledプロパティをNOに設定できます
ズームを無効にするには、mapView.zoomEnabled = FALSE;
有効
注釈が有効かどうかを示すブール値。
@property (nonatomic, getter=isEnabled) BOOL enabled
ディスカッション
このプロパティのデフォルト値はYESです。このプロパティの値がNOの場合、注釈ビューはタッチイベントを無視し、選択できません。サブクラスは、このプロパティの値に応じて、アノテーションの内容を異なる方法で表示する場合もあります。