2011-07-12 4 views
2

特定の地域にズームしようとしています。私が抱えている問題は、プログラムでは、固定ズームレベルにしか設定できないということです。私はこれを実証するためのテストアプリを作った。固定の中心座標を使用しています。サイズをメートル単位で変更します。私が1000と4000の間で行ったテストでは、ズームレベルはaprroxです: 1940,1940 < 3865,3865 < 4000+これらは、あなたが1000-4000に行くことを可能にする唯一の3つのズームレベルです。私が望むズームレベルは1940〜3865の間のどこかのズームレベルです。なぜなら、1940年以下、注釈が適合しないこと、3865よりも大きいために、画像は小さなズームの画像に比べて非常に貧弱だからです。本当にイライラしているのは、アノテーションフィッティングと画像がアプリをズームインして見栄えが良いものの、プログラマチックに設定するのではなく、正しく設定できるということです。MapKitのズーム間隔が狭いiPhone

もっと正確な設定方法を知っている人はいますか? (私はlong/latスパンで私の同じテストアプリを使ってみました - 同じ境界を持っています)。事前に

おかげ

+0

誰かがMKMapRectで同じことが起こっているかどうかを知っていますか? - ピンチされたように地図をズームする方法は本当に失われていますか? –

+0

MapKitズーム(タッチエミュレーションなど)を設定して明示的に設定していなくても、これを行う方法を教えていただけたら... –

+0

どのようにズームを設定していますか? – Anomie

答えて

2

MapKitのみ積算ズームレベルを設定することができます。非整数ズームレベルの場合はFile an enhancement requestです。

+0

タッチで行うことができた場合は、手動タッチイベントをmapkitなどに送信できませんか? –

0

原則として、setVisibleMapRect:animated:setRegion:animated:で任意のズームレベルを設定できるはずです。 しかしMapKitには、あなたが気づいたように、次の完全なズームレベルに「切り上げ」するバグがあるようです...かなり厄介な動作です。私はこれまでにAppleに報告したが、バグ報告システムによればまだ開いている。私は回避策を見つけることができなかったことを報告して申し訳ありません。

+0

これを明確にしてくれてありがとう - 私はちょうどユーザーが開発者より多くのコントロールを持っている方法が奇妙に感じる! –

0

問題はありますが、あなたのニーズに合った値を試してみることができます。数字はあなたが望むのと全く同じではないかもしれません。あなたは地図を見てそれを理解する必要があります。今日は同じことをしなければならなかったし、私はこれをしなかった:regionDidChangeAnimated:マップの現在の領域を記録し

  1. はMapViewのを実装しました。私は0.26 ...と0.24 ...をスパンとして持っていますが、それらの値を入れても、私は同じズームレベルを得ませんでした。

  2. 私は私が望むよりもズームアウトしているので、私はこれらの値を減らし始め、0.2と0.18を使用して終了しました。

唯一の解決策は試行錯誤です。手動のピンチで必要なズームレベルの値を取得することもできます。次に、これらの値を使用して領域をプログラムで設定します。地図がもっとズームされている場合は、比例して緯度と経度のデルタを減らしてみてください。ズームした場合は、比例して拡大してみてください。

私はこれがあなたを助けてくれることを願っています。

関連する問題