diff options
author | Tobrun <tobrun@mapbox.com> | 2016-01-18 10:18:35 +0100 |
---|---|---|
committer | Tobrun <tobrun@mapbox.com> | 2016-01-18 10:58:37 +0100 |
commit | 89b051f3865cb48fbe38a450336a6ca4517f6a07 (patch) | |
tree | 50af2226e374209020359e272c386948c65b6f3c /platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivity.java | |
parent | 74a9c505f9e390ec25fc16904c432dd19cc900f2 (diff) | |
download | qtlocation-mapboxgl-89b051f3865cb48fbe38a450336a6ca4517f6a07.tar.gz |
[android] #3593 - added double map view example
Diffstat (limited to 'platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivity.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivity.java | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivity.java new file mode 100644 index 0000000000..ae22622a19 --- /dev/null +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/DoubleMapActivity.java @@ -0,0 +1,147 @@ +package com.mapbox.mapboxsdk.testapp; + +import android.os.Bundle; +import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentTransaction; +import android.support.v7.app.ActionBar; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.Toolbar; +import android.view.LayoutInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; + +import com.mapbox.mapboxsdk.constants.MyLocationTracking; +import com.mapbox.mapboxsdk.constants.Style; +import com.mapbox.mapboxsdk.views.MapView; + +public class DoubleMapActivity extends AppCompatActivity { + + private static final String TAG_FRAGMENT = "map"; + private DoubleMapFragment mMapFragment; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_map_fragment); + + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + setSupportActionBar(toolbar); + + ActionBar actionBar = getSupportActionBar(); + if (actionBar != null) { + actionBar.setDisplayHomeAsUpEnabled(true); + actionBar.setDisplayShowHomeEnabled(true); + } + + if (savedInstanceState == null) { + FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); + transaction.add(R.id.fragment_container, mMapFragment = new DoubleMapFragment(), TAG_FRAGMENT); + transaction.commit(); + } else { + mMapFragment = (DoubleMapFragment) getSupportFragmentManager().findFragmentByTag(TAG_FRAGMENT); + } + } + + public static class DoubleMapFragment extends Fragment { + + private MapView mMapView; + private MapView mMapViewMini; + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + return inflater.inflate(R.layout.fragment_double_map, container, false); + } + + @Override + public void onViewCreated(View view, Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + + // MapView large + mMapView = (MapView) view.findViewById(R.id.mapview); + mMapView.onCreate(savedInstanceState); + mMapView.setStyle(Style.DARK); + mMapView.setZoom(18); + + // MapView mini + mMapViewMini = (MapView) view.findViewById(R.id.mini_map); + mMapViewMini.onCreate(savedInstanceState); + mMapViewMini.setStyle(Style.LIGHT); + mMapViewMini.setAttributionVisibility(View.GONE); + mMapViewMini.setLogoVisibility(View.GONE); + mMapViewMini.setCompassEnabled(false); + mMapViewMini.setZoom(4); + mMapViewMini.setAllGesturesEnabled(false); + + try { + mMapView.setMyLocationTrackingMode(MyLocationTracking.TRACKING_FOLLOW); + mMapViewMini.setMyLocationTrackingMode(MyLocationTracking.TRACKING_FOLLOW); + }catch (SecurityException e){ + // permission is handled in MainActivity + getActivity().finish(); + } + } + + @Override + public void onStart() { + super.onStart(); + mMapView.onStart(); + mMapViewMini.onStart(); + } + + @Override + public void onResume() { + super.onResume(); + mMapView.onResume(); + mMapViewMini.onResume(); + } + + @Override + public void onPause() { + super.onPause(); + mMapView.onPause(); + mMapViewMini.onPause(); + } + + @Override + public void onStop() { + super.onStop(); + mMapView.onStop(); + mMapViewMini.onStop(); + } + + @Override + public void onDestroy() { + super.onDestroy(); + mMapView.onDestroy(); + mMapViewMini.onDestroy(); + } + + @Override + public void onLowMemory() { + super.onLowMemory(); + mMapView.onLowMemory(); + mMapViewMini.onLowMemory(); + } + + @Override + public void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + mMapView.onSaveInstanceState(outState); + mMapViewMini.onSaveInstanceState(outState); + } + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case android.R.id.home: + onBackPressed(); + return true; + default: + return super.onOptionsItemSelected(item); + } + } + + +} |