QAbstractListModel
のマップ要素(MapCircleなど)をQmlマップに取り込みたいとします。これには、MapItemView
[1]とRepeater
[2]という2つのQmlツールが適しているようです。 Repeater
はより強力です(ネストされたモデルなど)。Repeater
の代わりにMapItemView
を使用する理由はありますか?Qt/Qml:マップ要素のリピータとMapItemView
よろしく、
[1] http://doc.qt.io/qt-5/qml-qtlocation-mapitemview.html
を[2] http://doc.qt.io/qt-5/qml-qtquick-repeater.html
MapItemViewソース:http://code.qt.io/cgit/qt/qtlocation.git/tree/src/location/declarativemaps/qdeclarativegeomapitemview.cpp
リピータソース:http://code.qt.io/cgit/qt/qtdeclarative.git/tree/src/quick/items/qquickrepeater.cpp
ドキュメンテーションから判断するのは難しいですが、ほとんどの場合、「ビュー」は必要なだけインスタンス化します。したがって、 'viewport'の外側にあるものは、あなたの記憶を乱すことはなく、最初の作成時間が改善されます。 'Repeater'はダンプです。表示されるかどうかにかかわらず、モデル内のすべての要素に対して 'Items'を作成します。 – derM
良い点。私はソースコードをチェックしました: '' MapItemView''はすべての項目をマップに追加します。 '' Repeater''がどういうことをしているのか分からないけど、おそらく地図にアイテムを追加するだけだろう。マップ自体が可視アイテムレンダリングを処理します。 – Hyndrix