summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/MarkerViewActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/MarkerViewActivity.java')
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/MarkerViewActivity.java29
1 files changed, 18 insertions, 11 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/MarkerViewActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/MarkerViewActivity.java
index 4b21dea076..fc35434be0 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/MarkerViewActivity.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/MarkerViewActivity.java
@@ -58,6 +58,7 @@ public class MarkerViewActivity extends AppCompatActivity {
private MapboxMap mapboxMap;
private MapView mapView;
+ private TextView viewCountView;
// MarkerView location updates
private MarkerView movingMarkerOne;
@@ -77,7 +78,7 @@ public class MarkerViewActivity extends AppCompatActivity {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_marker_view);
- final TextView viewCountView = (TextView) findViewById(R.id.countView);
+ viewCountView = (TextView) findViewById(R.id.countView);
mapView = (MapView) findViewById(R.id.mapView);
mapView.onCreate(savedInstanceState);
mapView.getMapAsync(mapboxMap -> {
@@ -140,18 +141,12 @@ public class MarkerViewActivity extends AppCompatActivity {
markerViewManager.addMarkerViewAdapter(new CountryAdapter(MarkerViewActivity.this, mapboxMap));
markerViewManager.addMarkerViewAdapter(new TextAdapter(MarkerViewActivity.this, mapboxMap));
- final ViewGroup markerViewContainer = markerViewManager.getMarkerViewContainer();
// add a change listener to validate the size of amount of child views
- mapView.addOnMapChangedListener(change -> {
- if (change == MapView.REGION_IS_CHANGING || change == MapView.REGION_DID_CHANGE) {
- if (!markerViewManager.getMarkerViewAdapters().isEmpty() && viewCountView != null) {
- viewCountView.setText(String.format(
- Locale.getDefault(),
- getString(R.string.viewcache_size),
- markerViewContainer.getChildCount())
- );
- }
+ mapView.addOnCameraDidChangeListener(new MapView.OnCameraDidChangeListener() {
+ @Override
+ public void onCameraDidChange(boolean animated) {
+ setViewCount();
}
});
@@ -194,6 +189,18 @@ public class MarkerViewActivity extends AppCompatActivity {
});
}
+ private void setViewCount() {
+ final MarkerViewManager markerViewManager = mapboxMap.getMarkerViewManager();
+ final ViewGroup markerViewContainer = markerViewManager.getMarkerViewContainer();
+ if (!markerViewManager.getMarkerViewAdapters().isEmpty() && viewCountView != null) {
+ viewCountView.setText(String.format(
+ Locale.getDefault(),
+ getString(R.string.viewcache_size),
+ markerViewContainer.getChildCount())
+ );
+ }
+ }
+
private void loopMarkerRotate() {
rotateUpdateHandler.postDelayed(rotateMarkerRunnable, 800);
}