空港から飛行機を飛行する架空の飛行機を表示したいアプリケーションを開発しています。これは私がマップを飛行する唯一のものではないかもしれません。MKOverlayPathViewをタイルの後ろに移動する
これは私がLocationReminders(彼らが持っているMKOverlayPathViewサブクラス、ReminderCircleView)のサンプルコードを使用し、プレーンを表す私自身のMKOverlayに接続しました。このクラスは、オーバーレイクラスのcoordinateおよびradiusプロパティに関するKVO通知をサブスクライブし、更新があるたびにそのパスを無効にします。
オーバーレイは、毎秒数フレームでその位置を更新し、私もそれは私が(それはまだ私が見つけた最高のソリューションモデルオブジェクトですが、非常にスマートでは考慮しない)の視点をシミュレートすることができ、半径のアップデート。
私はテストのために単純な円のパスを使用しています。
この設定は正常に動作します。オーバーレイビューは更新され、正しく動作し、マップおよびすべてのスケーリングが行われます。
問題は、模擬飛行中にオーバーレイが正常に送信先の近くに、タイルの一部の上に描画されないことです。このタイルの背後には、円が見えるように見えます。
私はこの問題に一つのことを理解することができました:私は私が円をズームアウトしている場合、いくつかのタイルの上に描かれていない円が正しく描画されます観察する時はいつでも。ズームインまたはパンニングでは何も解決されません。
私の理論は、タイル(またはその地図rects)の一部が再描画ので、唯一のズームイン・ズームアウトで、私はそれを強制することができますのためにマークされていないことです。しかし、私はそれがズームインが助けにならないという事実と一致していないと思う。私はバグか何かにぶつかっていた場合、私は間違っているか、何をやっている場合、私は知らない
。私は代わりに注釈を使用していましたが、それを使っていましたが、ズームスケールを自分で観察しなくてもズームアウトすれば、平面を表現する能力がなくなります。
バージョン5.1,6.0,6.1でテストしましたが、動作は同じです。