summaryrefslogtreecommitdiff
path: root/android
diff options
context:
space:
mode:
authorTobrun <tobrun.van.nuland@gmail.com>2015-12-11 18:15:40 -0800
committerTobrun <tobrun.van.nuland@gmail.com>2015-12-12 09:12:21 -0800
commitcc6169154f41880a9d0cf8cffea4a0aaf032d73a (patch)
tree66104527a39542bbd49598c76436a9832100eab9 /android
parent7117ec503233bad1aaf4f82c57b184f4e73c3b56 (diff)
downloadqtlocation-mapboxgl-cc6169154f41880a9d0cf8cffea4a0aaf032d73a.tar.gz
[android] #3270 - add sample activity for animated coordinate change
Diffstat (limited to 'android')
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml3
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/CoordinateChangeActivity.java113
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java4
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_animate_coordinates.xml9
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_adapter.xml9
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_concurrent.xml9
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_tilt.xml9
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_animate_coordinate.xml45
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml12
-rw-r--r--android/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml2
10 files changed, 212 insertions, 3 deletions
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml b/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
index de5f3a2aa5..44ebc8c949 100644
--- a/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml
@@ -56,6 +56,9 @@
<activity
android:name=".PolylineActivity"
android:label="@string/activity_polyline" />
+ <activity
+ android:name=".CoordinateChangeActivity"
+ android:label="@string/activity_animate_coordinate_change" />
<meta-data
android:name="io.fabric.ApiKey"
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/CoordinateChangeActivity.java b/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/CoordinateChangeActivity.java
new file mode 100644
index 0000000000..8fba65a7cf
--- /dev/null
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/CoordinateChangeActivity.java
@@ -0,0 +1,113 @@
+package com.mapbox.mapboxsdk.testapp;
+
+import android.os.Bundle;
+import android.support.design.widget.FloatingActionButton;
+import android.support.v4.content.ContextCompat;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.view.MenuItem;
+import android.view.View;
+
+import com.mapbox.mapboxsdk.constants.Style;
+import com.mapbox.mapboxsdk.geometry.LatLng;
+import com.mapbox.mapboxsdk.geometry.LatLngZoom;
+import com.mapbox.mapboxsdk.utils.ApiAccess;
+import com.mapbox.mapboxsdk.views.MapView;
+
+public class CoordinateChangeActivity extends AppCompatActivity {
+
+ private MapView mMapView;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_animate_coordinate);
+
+ Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+ setSupportActionBar(toolbar);
+
+ ActionBar actionBar = getSupportActionBar();
+ if (actionBar != null) {
+ actionBar.setDisplayHomeAsUpEnabled(true);
+ actionBar.setDisplayShowHomeEnabled(true);
+ }
+
+ mMapView = (MapView) findViewById(R.id.mapView);
+ mMapView.setTag(true);
+ mMapView.setAccessToken(ApiAccess.getToken(this));
+ mMapView.onCreate(savedInstanceState);
+ mMapView.setStyle(Style.MAPBOX_STREETS);
+ mMapView.setCenterCoordinate(new LatLngZoom(38.87031, -77.00897, 16));
+ mMapView.setCompassEnabled(false);
+
+ FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
+ fab.setColorFilter(ContextCompat.getColor(this, R.color.primary));
+ fab.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ mMapView.setCenterCoordinate(getCoordinate(), true);
+ }
+ });
+ }
+
+ private LatLng getCoordinate() {
+ boolean first = (boolean) mMapView.getTag();
+ mMapView.setTag(!first);
+ return first ? new LatLng(38.87000, -77.00800) : new LatLng(38.87031, -77.00897);
+ }
+
+ @Override
+ protected void onStart() {
+ super.onStart();
+ mMapView.onStart();
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ mMapView.onResume();
+ }
+
+ @Override
+ public void onPause() {
+ super.onPause();
+ mMapView.onPause();
+ }
+
+ @Override
+ protected void onStop() {
+ super.onStop();
+ mMapView.onStop();
+ }
+
+ @Override
+ protected void onSaveInstanceState(Bundle outState) {
+ super.onSaveInstanceState(outState);
+ mMapView.onSaveInstanceState(outState);
+ }
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ mMapView.onDestroy();
+ }
+
+ @Override
+ public void onLowMemory() {
+ super.onLowMemory();
+ mMapView.onLowMemory();
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case android.R.id.home:
+ onBackPressed();
+ return true;
+ default:
+ return super.onOptionsItemSelected(item);
+ }
+ }
+
+} \ No newline at end of file
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java b/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java
index 711fec1390..c303d94cdc 100644
--- a/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/MainActivity.java
@@ -356,6 +356,10 @@ public class MainActivity extends AppCompatActivity {
startActivity(new Intent(getApplicationContext(), ManualZoomActivity.class));
return true;
+ case R.id.action_coordinate_change:
+ startActivity(new Intent(getApplicationContext(), CoordinateChangeActivity.class));
+ return true;
+
case R.id.action_bulk_markers:
startActivity(new Intent(getApplicationContext(), BulkMarkerActivity.class));
return true;
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_animate_coordinates.xml b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_animate_coordinates.xml
new file mode 100644
index 0000000000..564e1235e5
--- /dev/null
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_animate_coordinates.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0">
+ <path
+ android:fillColor="#FFFFFF"
+ android:pathData="M17,6c-3.31,0 -6,2.69 -6,6s2.69,6 6,6 6,-2.69 6,-6 -2.69,-6 -6,-6zM5,8c-2.21,0 -4,1.79 -4,4s1.79,4 4,4 4,-1.79 4,-4 -1.79,-4 -4,-4zm0,6c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2z" />
+</vector>
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_adapter.xml b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_adapter.xml
new file mode 100644
index 0000000000..0d4c724aa9
--- /dev/null
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_adapter.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0">
+ <path
+ android:fillColor="#FFFFFF"
+ android:pathData="M19,19H5V5h7V3H5c-1.11,0 -2,0.9 -2,2v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2v-7h-2v7zM14,3v2h3.59l-9.83,9.83 1.41,1.41L19,6.41V10h2V3h-7z" />
+</vector>
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_concurrent.xml b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_concurrent.xml
new file mode 100644
index 0000000000..9b16b15571
--- /dev/null
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_infowindow_concurrent.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0">
+ <path
+ android:fillColor="#FFFFFF"
+ android:pathData="M3,5H1v16c0,1.1 0.9,2 2,2h16v-2H3V5zm18,-4H7c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-2 -2,-2zm0,16H7V3h14v14z" />
+</vector>
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_tilt.xml b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_tilt.xml
new file mode 100644
index 0000000000..d5c67efbb7
--- /dev/null
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/res/drawable/ic_tilt.xml
@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0">
+ <path
+ android:fillColor="#FFFFFF"
+ android:pathData="M7.77,6.76L6.23,5.48 0.82,12l5.41,6.52 1.54,-1.28L3.42,12l4.35,-5.24zM7,13h2v-2H7v2zm10,-2h-2v2h2v-2zm-6,2h2v-2h-2v2zm6.77,-7.52l-1.54,1.28L20.58,12l-4.35,5.24 1.54,1.28L23.18,12l-5.41,-6.52z" />
+</vector>
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_animate_coordinate.xml b/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_animate_coordinate.xml
new file mode 100644
index 0000000000..7d1929edc7
--- /dev/null
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_animate_coordinate.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <android.support.v7.widget.Toolbar
+ android:id="@+id/toolbar"
+ android:layout_width="match_parent"
+ android:layout_height="?attr/actionBarSize"
+ android:background="@color/primary"
+ android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />
+
+ <FrameLayout
+ android:id="@+id/content_frame"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_below="@+id/toolbar">
+
+ <android.support.design.widget.CoordinatorLayout
+ android:id="@+id/coordinator_layout"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <com.mapbox.mapboxsdk.views.MapView
+ android:id="@+id/mapView"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent" />
+
+ <android.support.design.widget.FloatingActionButton
+ android:id="@+id/fab"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="end|bottom"
+ android:layout_margin="@dimen/fab_margin"
+ android:src="@drawable/ic_animate_coordinates"
+ app:backgroundTint="@color/white" />
+
+ </android.support.design.widget.CoordinatorLayout>
+
+ </FrameLayout>
+
+</RelativeLayout>
+
+
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml b/android/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
index f8bf152a5d..bfd70a936f 100644
--- a/android/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_drawer.xml
@@ -69,7 +69,7 @@
<item
android:id="@+id/action_tilt"
android:checkable="false"
- android:icon="@drawable/ic_flip_to_back_24dp"
+ android:icon="@drawable/ic_tilt"
android:title="@string/action_tilt" />
<item
@@ -87,13 +87,13 @@
<item
android:id="@+id/action_info_window_concurrent"
android:checkable="false"
- android:icon="@drawable/ic_flip_to_front_24dp"
+ android:icon="@drawable/ic_flip_to_back_24dp"
android:title="@string/action_info_window_concurrent" />
<item
android:id="@+id/action_info_window_adapter"
android:checkable="false"
- android:icon="@drawable/ic_flip_to_back_24dp"
+ android:icon="@drawable/ic_infowindow_adapter"
android:title="@string/action_info_window_adapter" />
<item
@@ -109,6 +109,12 @@
android:title="@string/action_manual_zoom" />
<item
+ android:id="@+id/action_coordinate_change"
+ android:checkable="false"
+ android:icon="@drawable/ic_animate_coordinates"
+ android:title="@string/action_animate_coordinate_change" />
+
+ <item
android:id="@+id/action_visible_bounds"
android:checkable="false"
android:icon="@drawable/ic_crop_24dp"
diff --git a/android/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml b/android/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
index 2ac09d96b6..8cc299e39f 100644
--- a/android/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
+++ b/android/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml
@@ -15,6 +15,7 @@
<string name="activity_visible_coordinate_bounds">Visible Coordinate Bounds</string>
<string name="activity_user_tracking_mode">User tracking mode</string>
<string name="activity_polyline">Polyline Activity</string>
+ <string name="activity_animate_coordinate_change">Animate Coordinate Change</string>
<string name="navdrawer_menu_title_mainactivity_controls">Main Activity Controls</string>
<string name="navdrawer_menu_title_mainactivity_styles">Main Activity Styles</string>
@@ -30,6 +31,7 @@
<string name="action_press_for_marker">Press For Marker</string>
<string name="action_manual_zoom">Manual Zoom</string>
<string name="action_info_window">InfoWindow</string>
+ <string name="action_animate_coordinate_change">Animate Coordinate Change</string>
<string name="action_info_window_concurrent">InfoWindow (Concurrent)</string>
<string name="action_add_bulk_markers">Add Markers in bulk</string>
<string name="action_visible_bounds">Set Visible Bounds</string>