2

MKMapKit の region プロパティを設定するたびに、スパンが 2 倍になります。

例えば:

MKCoordinateRegion currentRegion = map.region; // assume the current center of region is around New-York and the span is 2 by 2
map.region = map.region; // assign the region to itself
MKCoordinateRegion newRegion = map.region; 
// the span of newRegion is different (almost twice than currentRegion)

何が起きてる?

4

2 に答える 2

1

MapView の region.center も設定していますか?

MKMapView の領域プロパティ API の説明を見てください。

「地域の中心座標のみを変更すると、スパンが暗黙的に変更される可能性があります。これは、スパンによって表される距離が異なる緯度と経度で変化し、マップ ビューでスパンを調整する必要がある場合があるためです。新しい位置。ズーム レベルを変更せずに中心座標を変更する場合は、代わりに centerCoordinate を使用してください。

これは、region.center を変更したときに、中心座標に基づいて計算された値によってリージョン スパンの設定が上書きされる可能性があることを意味します。

于 2009-09-26T22:10:27.790 に答える
0

シミュレーターとデバイスの両方でも取得できます... iphone SDK 3.0、xcode 3.2。

SDK 3.1 のシミュレーターもそれを行います... 3.1 を搭載したデバイスを今すぐ試してはいけません。

なぜ彼らはこのバグを見つけられなかったのですか?? リージョンの読み込みと保存よりも基本的なことは何ですか??

マップキットには他にもたくさんのバグがあります! :-/ かなり弱いです!

ところで、regionThatFits を呼び出すと、ほぼ同じリージョンが得られます。地域を設定しようとすると、実際には [mapview regionThatFits:yourregion] に近い値が設定されます (常に正確であるとは限りません)。

于 2009-10-06T05:50:46.890 に答える