From 9045d2450d6e5a253b3bb423525be39ad53f3a5f Mon Sep 17 00:00:00 2001 From: tobrun Date: Wed, 20 Mar 2019 19:29:26 +0100 Subject: [android] - call getMapAsync when restoring map fragment from saved instance state --- .../testapp/activity/fragment/MapFragmentActivity.java | 14 +++++++++----- .../activity/fragment/SupportMapFragmentActivity.java | 14 +++++++++----- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/MapFragmentActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/MapFragmentActivity.java index 472b9b7d57..c7f530b123 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/MapFragmentActivity.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/MapFragmentActivity.java @@ -3,16 +3,15 @@ package com.mapbox.mapboxsdk.testapp.activity.fragment; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.v7.app.AppCompatActivity; - import com.mapbox.mapboxsdk.camera.CameraPosition; import com.mapbox.mapboxsdk.camera.CameraUpdateFactory; -import com.mapbox.mapboxsdk.maps.Style; import com.mapbox.mapboxsdk.geometry.LatLng; import com.mapbox.mapboxsdk.maps.MapFragment; import com.mapbox.mapboxsdk.maps.MapView; import com.mapbox.mapboxsdk.maps.MapboxMap; import com.mapbox.mapboxsdk.maps.MapboxMapOptions; import com.mapbox.mapboxsdk.maps.OnMapReadyCallback; +import com.mapbox.mapboxsdk.maps.Style; import com.mapbox.mapboxsdk.testapp.R; /** @@ -24,6 +23,7 @@ import com.mapbox.mapboxsdk.testapp.R; public class MapFragmentActivity extends AppCompatActivity implements MapFragment.OnMapViewReadyCallback, OnMapReadyCallback, MapView.OnDidFinishRenderingFrameListener { + private static final String TAG = "com.mapbox.map"; private MapboxMap mapboxMap; private MapView mapView; private boolean initialCameraAnimation = true; @@ -32,14 +32,18 @@ public class MapFragmentActivity extends AppCompatActivity implements MapFragmen protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map_fragment); + + MapFragment mapFragment; if (savedInstanceState == null) { - MapFragment mapFragment = MapFragment.newInstance(createFragmentOptions()); + mapFragment = MapFragment.newInstance(createFragmentOptions()); getFragmentManager() .beginTransaction() - .add(R.id.fragment_container, mapFragment, "com.mapbox.map") + .add(R.id.fragment_container, mapFragment, TAG) .commit(); - mapFragment.getMapAsync(this); + } else { + mapFragment = (MapFragment) getFragmentManager().findFragmentByTag(TAG); } + mapFragment.getMapAsync(this); } private MapboxMapOptions createFragmentOptions() { diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/SupportMapFragmentActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/SupportMapFragmentActivity.java index 4baf40d51b..7fd84bcd25 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/SupportMapFragmentActivity.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/SupportMapFragmentActivity.java @@ -3,16 +3,15 @@ package com.mapbox.mapboxsdk.testapp.activity.fragment; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.v7.app.AppCompatActivity; - import com.mapbox.mapboxsdk.camera.CameraPosition; import com.mapbox.mapboxsdk.camera.CameraUpdateFactory; -import com.mapbox.mapboxsdk.maps.Style; import com.mapbox.mapboxsdk.geometry.LatLng; import com.mapbox.mapboxsdk.maps.MapFragment; import com.mapbox.mapboxsdk.maps.MapView; import com.mapbox.mapboxsdk.maps.MapboxMap; import com.mapbox.mapboxsdk.maps.MapboxMapOptions; import com.mapbox.mapboxsdk.maps.OnMapReadyCallback; +import com.mapbox.mapboxsdk.maps.Style; import com.mapbox.mapboxsdk.maps.SupportMapFragment; import com.mapbox.mapboxsdk.testapp.R; @@ -25,6 +24,7 @@ import com.mapbox.mapboxsdk.testapp.R; public class SupportMapFragmentActivity extends AppCompatActivity implements MapFragment.OnMapViewReadyCallback, OnMapReadyCallback, MapView.OnDidFinishRenderingFrameListener { + private static final String TAG = "com.mapbox.map"; private MapboxMap mapboxMap; private MapView mapView; private boolean initialCameraAnimation = true; @@ -33,14 +33,18 @@ public class SupportMapFragmentActivity extends AppCompatActivity implements Map protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map_fragment); + SupportMapFragment mapFragment; if (savedInstanceState == null) { - SupportMapFragment mapFragment = SupportMapFragment.newInstance(createFragmentOptions()); + mapFragment = SupportMapFragment.newInstance(createFragmentOptions()); getSupportFragmentManager() .beginTransaction() - .add(R.id.fragment_container, mapFragment, "com.mapbox.map") + .add(R.id.fragment_container, mapFragment, TAG) .commit(); - mapFragment.getMapAsync(this); + } else { + mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentByTag(TAG); } + mapFragment.getMapAsync(this); + } private MapboxMapOptions createFragmentOptions() { -- cgit v1.2.1