diff options
author | Tobrun <tobrun.van.nuland@gmail.com> | 2016-03-09 09:44:44 -0500 |
---|---|---|
committer | Tobrun <tobrun.van.nuland@gmail.com> | 2016-03-09 16:00:35 -0500 |
commit | 3679dc254f588e1336da7109307ca0c7894bba17 (patch) | |
tree | b23b9c0b4ece3549dff8a012084955f143ef4b45 /platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java | |
parent | 9c4192411afeabdfc6abcadf1cb860e88af9ba4c (diff) | |
download | qtlocation-mapboxgl-3679dc254f588e1336da7109307ca0c7894bba17.tar.gz |
[android] #4076 - MapboxMapOptions initial version
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java index 61d4af51cd..205fad9d8e 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java @@ -2,15 +2,13 @@ package com.mapbox.mapboxsdk.maps; import android.app.Fragment; import android.os.Bundle; -import android.os.Handler; import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import com.mapbox.mapboxsdk.R; -import com.mapbox.mapboxsdk.constants.Style; -import com.mapbox.mapboxsdk.utils.ApiAccess; +import com.mapbox.mapboxsdk.constants.MapboxConstants; /** * Fragment wrapper around a map view. @@ -26,27 +24,37 @@ import com.mapbox.mapboxsdk.utils.ApiAccess; * * @see #getMapAsync(OnMapReadyCallback) */ -public class MapFragment extends Fragment { +public final class MapFragment extends Fragment { private MapView mMap; + private OnMapReadyCallback mOnMapReadyCallback; - public static MapFragment newInstance() { - return new MapFragment(); + public static MapFragment newInstance(@Nullable MapboxMapOptions mapboxMapOptions) { + MapFragment mapFragment = new MapFragment(); + Bundle bundle = new Bundle(); + bundle.putParcelable(MapboxConstants.FRAG_ARG_MAPBOXMAPOPTIONS, mapboxMapOptions); + mapFragment.setArguments(bundle); + return mapFragment; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { super.onCreateView(inflater, container, savedInstanceState); - mMap = (MapView) inflater.inflate(R.layout.fragment_mapview, container, false); - mMap.setAccessToken(ApiAccess.getToken(inflater.getContext())); + MapboxMapOptions options = getArguments().getParcelable(MapboxConstants.FRAG_ARG_MAPBOXMAPOPTIONS); + return mMap = new MapView(inflater.getContext(), options); + } + + @Override + public void onViewCreated(View view, Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); mMap.onCreate(savedInstanceState); - return mMap; } @Override public void onStart() { super.onStart(); mMap.onStart(); + mMap.getMapAsync(mOnMapReadyCallback); } @Override @@ -63,8 +71,8 @@ public class MapFragment extends Fragment { @Override public void onSaveInstanceState(@NonNull Bundle outState) { - mMap.onSaveInstanceState(outState); super.onSaveInstanceState(outState); + mMap.onSaveInstanceState(outState); } @Override @@ -75,8 +83,8 @@ public class MapFragment extends Fragment { @Override public void onLowMemory() { - mMap.onLowMemory(); super.onLowMemory(); + mMap.onLowMemory(); } @Override @@ -86,13 +94,7 @@ public class MapFragment extends Fragment { mMap = null; } - @NonNull public void getMapAsync(@NonNull final OnMapReadyCallback onMapReadyCallback) { - new Handler().post(new Runnable() { - @Override - public void run() { - mMap.getMapAsync(onMapReadyCallback); - } - }); + mOnMapReadyCallback = onMapReadyCallback; } } |