• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:iPhone UISliderでの地図の縮尺の変更)

iPhone UISliderで地図の縮尺を変更する方法

このQ&Aのポイント
  • iPhoneのUISliderを使用してMKMapViewの縮尺を変更する方法について調査しています。
  • UISliderに値を設定しているにもかかわらず、シミュレーションでスライダーを動かすと地図が最大まで拡大されてしまう問題に遭遇しています。
  • 調査を進めましたが、解決策が見つからず困っています。もしご存知の方がいらっしゃいましたら、アドバイスをいただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • harawo
  • ベストアンサー率58% (3742/6450)
回答No.1

> MKCoordinateRegion cr = > MKCoordinateRegionMake(location, MKCoordinateSpanMake(slider2.value, slider2.value)); ここが問題のようです。 まず、ViewControllerロード時の、MKMapViewのMKCoordinateSpanを保存しておきます。 ViewControllerのインスタンス変数: CLLocationDegrees laDelta, loDelta; ViewDidLoadメソッド: - (void)viewDidLoad { [super viewDidLoad]; MKCoordinateRegion rg = mapView.region; MKCoordinateSpan sp = rg.span; laDelta = sp.latitudeDelta; loDelta = sp.longitudeDelta; } そのうえで、さきほど指摘した2行を書き換えます。 float scaleValue = slider2.value; MKCoordinateRegion cr = MKCoordinateRegionMake(location, MKCoordinateSpanMake(laDelta * scaleValue, loDelta * scaleValue)); 縮尺を最大値以上に指定すると、例外が発生して、アプリが落ちます。スライダーの最大値、最小値の設定に注意してください。

takahi6
質問者

お礼

アドバイスありがとうございました。 無事スライダーで縮尺の変更を行えるようになりました。 毎回毎回的確なアドバイスを頂きとても感謝致しております。

すると、全ての回答が全文表示されます。

関連するQ&A