1

MKMapViewアプリに埋め込まれた 15k のリストを表示する必要があります。これはおそらく一度にロードするには多すぎると思います。これを行う標準的な方法があるかどうかを確認したいと思います。ピンに関するXML情報を含むファイルは、Web サーバーに保存されます。

いくつかのオプションがあると思いますが、ボトルネックがどこにあるのかまだわかりません (ネットワーク、一度に多くのピンを表示する、最初にマップにピンをロードするなど):

  • xml ファイル全体を解析し、すべての注釈を追加します。あまりにも多くのピンが一緒に表示されないように、ユーザーのズームを強制します

  • xml ファイル全体を解析し、すべての注釈を追加します。のグループ化にはライブラリを使用しますPins

  • ユーザーが現在いるエリアの上位 50 個のピンのみを読み込みます。位置が更新されるたびに、地図の緯度経度とズームに基づいて 50 個の位置のみを提供するスクリプトを Web サーバーで呼び出します。

  • すべてを coredata にキャッシュし、前のポイントと同じことを行います。

私がしなければならないパフォーマンスについての考慮事項はありますか?他の解決策はありますか?これらは十分に機能しますか?

ありがとう!

4

1 に答える 1

4

ボトルネックは、マップ上に一度にその数のピンを表示します。一度に500個を超えて表示しないでください。ズームインしても問題ない場合がありますが、ズームアウトするとパフォーマンスとマップの可視性に影響します。

クラスタリングを行うライブラリは次のとおりです。

http://applidium.com/en/news/too_many_pins_on_your_map/

于 2012-11-06T12:22:47.607 に答える