QML Map's onMapScaleChanged and onMapExtentChanged signals not working as expected, especially on Android.

2557
3
Jump to solution
03-21-2016 06:40 PM
JonathonGrivas
New Contributor III


When I build a project for desktop or android, mapScaleChanged and mapExtentChanged both fire off at the same time, there appears to be no functional difference between them.  I would have expected "mapScaleChanged" to fire off only when the map zoom level changes, instead it also fires off when I'm panning.

Furthermore, when I build for android, not only do both of these events fire off at the same time, but they fire off dozens of times while either panning or zooming. They seem to fire off whenever the touch moves, not just when the touch is released. I would have expected them to work as they do on desktop, which is only to fire off when the mouse is released.

Can anyone speculate as to what could be going wrong?

0 Kudos
1 Solution

Accepted Solutions
LucasDanzinger
Esri Frequent Contributor

Looks like a bug. We will get this working right with our Quartz release. mapScaleChanged should only emit when the scale changes, and Quartz will have a new signal called visibleAreaChanged, which will work similarly to extentChanged. This would emit if you pan or zoom.

-Luke

View solution in original post

0 Kudos
3 Replies
LucasDanzinger
Esri Frequent Contributor

Looks like a bug. We will get this working right with our Quartz release. mapScaleChanged should only emit when the scale changes, and Quartz will have a new signal called visibleAreaChanged, which will work similarly to extentChanged. This would emit if you pan or zoom.

-Luke

0 Kudos
JonathonGrivas
New Contributor III

Hey Lucas,

Thanks for getting back to me.  Can you provide any clarification on plans for Quartz for the QT platform?  The beta release does not seem to be available for QT yet, I can only find version 10.2.6. 

Additionally, I've been informed that there are problems with the QT C++ sdk working cross-platform on mobile (namely IOS?), do you have any idea if that's going to be addressed in the Quartz release?

Thanks,

Jonathon

0 Kudos
LucasDanzinger
Esri Frequent Contributor

We plan to release the beta near the User Conference in June. It will support C++ API on all of the same supported platforms as QML (namely, adding support for iOS and Android). This paradigm will be achievable through exposing a C++ map view as a QQuickItem type, so you can write your UI in QML, and your logic in C++.

0 Kudos