Skip to content

Commit c1a271e

Browse files
authored
Merge branch 'ak-#5302-use-shields-in-maneuvers' into ak-#1336-#1337-refactor-exit
2 parents 29618e2 + 1003f51 commit c1a271e

File tree

28 files changed

+702
-152
lines changed

28 files changed

+702
-152
lines changed

examples/src/main/AndroidManifest.xml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,14 @@
9696
</activity>
9797

9898
<activity
99-
android:name=".MapboxDropInActivity"
100-
android:label="@string/title_drop_in">
99+
android:name=".MapboxNavigationViewActivity"
100+
android:label="@string/title_navigation_view">
101101
</activity>
102102

103+
<activity
104+
android:name=".MapboxNavigationViewFragmentActivity"
105+
android:label="@string/title_navigation_view"/>
106+
103107
<activity
104108
android:name="com.mapbox.navigation.examples.MainActivity"
105109
android:exported="true">

examples/src/main/java/com/mapbox/navigation/examples/MainActivity.kt

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,12 @@ import com.mapbox.android.core.permissions.PermissionsListener
1313
import com.mapbox.navigation.examples.core.IndependentRouteGenerationActivity
1414
import com.mapbox.navigation.examples.core.MapboxBuildingHighlightActivity
1515
import com.mapbox.navigation.examples.core.MapboxCustomStyleActivity
16-
import com.mapbox.navigation.examples.core.MapboxDropInActivity
1716
import com.mapbox.navigation.examples.core.MapboxJunctionActivity
1817
import com.mapbox.navigation.examples.core.MapboxManeuverActivity
1918
import com.mapbox.navigation.examples.core.MapboxMultipleArrowActivity
2019
import com.mapbox.navigation.examples.core.MapboxNavigationActivity
20+
import com.mapbox.navigation.examples.core.MapboxNavigationViewActivity
21+
import com.mapbox.navigation.examples.core.MapboxNavigationViewFragmentActivity
2122
import com.mapbox.navigation.examples.core.MapboxRouteLineAndArrowActivity
2223
import com.mapbox.navigation.examples.core.MapboxSignboardActivity
2324
import com.mapbox.navigation.examples.core.MapboxTripProgressActivity
@@ -141,10 +142,15 @@ class MainActivity : AppCompatActivity(), PermissionsListener {
141142
RouteDrawingActivity::class.java
142143
),
143144
SampleItem(
144-
getString(R.string.title_drop_in),
145-
getString(R.string.description_drop_in),
146-
MapboxDropInActivity::class.java
147-
)
145+
getString(R.string.title_navigation_view),
146+
getString(R.string.description_navigation_view),
147+
MapboxNavigationViewActivity::class.java
148+
),
149+
SampleItem(
150+
getString(R.string.title_navigation_view_fragment),
151+
getString(R.string.description_navigation_view_fragment),
152+
MapboxNavigationViewFragmentActivity::class.java
153+
),
148154
)
149155
}
150156

examples/src/main/java/com/mapbox/navigation/examples/core/MapboxDropInActivity.kt renamed to examples/src/main/java/com/mapbox/navigation/examples/core/MapboxNavigationViewActivity.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,18 @@ import androidx.appcompat.app.AppCompatActivity
55
import com.mapbox.navigation.base.ExperimentalPreviewMapboxNavigationAPI
66
import com.mapbox.navigation.dropin.MapboxNavigationViewApi
77
import com.mapbox.navigation.dropin.ViewProvider
8-
import com.mapbox.navigation.examples.core.databinding.LayoutActivityDropInBinding
8+
import com.mapbox.navigation.examples.core.databinding.LayoutActivityNavigationViewBinding
99

10-
class MapboxDropInActivity : AppCompatActivity() {
10+
class MapboxNavigationViewActivity : AppCompatActivity() {
1111

1212
private lateinit var mapboxNavigationViewApi: MapboxNavigationViewApi
1313

14-
private lateinit var binding: LayoutActivityDropInBinding
14+
private lateinit var binding: LayoutActivityNavigationViewBinding
1515

1616
@OptIn(ExperimentalPreviewMapboxNavigationAPI::class)
1717
override fun onCreate(savedInstanceState: Bundle?) {
1818
super.onCreate(savedInstanceState)
19-
binding = LayoutActivityDropInBinding.inflate(layoutInflater)
19+
binding = LayoutActivityNavigationViewBinding.inflate(layoutInflater)
2020
setContentView(binding.root)
2121

2222
mapboxNavigationViewApi = binding.navigationView.navigationViewApi
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.mapbox.navigation.examples.core
2+
3+
import android.os.Bundle
4+
import androidx.appcompat.app.AppCompatActivity
5+
import com.mapbox.navigation.examples.core.databinding.LayoutActivityNavigationViewFragmentBinding
6+
7+
class MapboxNavigationViewFragmentActivity : AppCompatActivity() {
8+
9+
private lateinit var binding: LayoutActivityNavigationViewFragmentBinding
10+
11+
override fun onCreate(savedInstanceState: Bundle?) {
12+
super.onCreate(savedInstanceState)
13+
binding = LayoutActivityNavigationViewFragmentBinding.inflate(layoutInflater)
14+
setContentView(binding.root)
15+
}
16+
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
package com.mapbox.navigation.examples.core
2+
3+
import android.os.Bundle
4+
import android.view.LayoutInflater
5+
import android.view.View
6+
import android.view.ViewGroup
7+
import androidx.fragment.app.Fragment
8+
import com.mapbox.navigation.dropin.NavigationView
9+
import com.mapbox.navigation.dropin.NavigationViewOptions
10+
import com.mapbox.navigation.dropin.ViewProvider
11+
import com.mapbox.navigation.examples.core.databinding.FragmentNavigationViewBinding
12+
13+
class NavigationViewFragment : Fragment() {
14+
15+
override fun onCreateView(
16+
inflater: LayoutInflater,
17+
container: ViewGroup?,
18+
savedInstanceState: Bundle?
19+
): View {
20+
val binding = FragmentNavigationViewBinding.inflate(inflater)
21+
val navigationView = NavigationView(
22+
context = requireContext(),
23+
accessToken = getString(R.string.mapbox_access_token),
24+
navigationViewOptions = NavigationViewOptions.Builder(requireContext())
25+
.useReplayEngine(true)
26+
.build(),
27+
lifecycleOwner = this,
28+
viewModelStoreOwner = this
29+
)
30+
binding.navigationViewContainer.addView(navigationView)
31+
navigationView.navigationViewApi.configureNavigationView(ViewProvider())
32+
binding.tempStartNavigation.setOnClickListener {
33+
navigationView.navigationViewApi.temporaryStartNavigation()
34+
}
35+
36+
return binding.root
37+
}
38+
39+
companion object {
40+
@JvmStatic
41+
fun newInstance() = NavigationViewFragment()
42+
}
43+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
2+
xmlns:app="http://schemas.android.com/apk/res-auto"
3+
xmlns:tools="http://schemas.android.com/tools"
4+
android:layout_width="match_parent"
5+
android:layout_height="match_parent"
6+
tools:context=".MapboxNavigationViewFragmentActivity">
7+
8+
<FrameLayout
9+
android:id="@+id/navigationViewContainer"
10+
android:layout_width="0dp"
11+
android:layout_height="0dp"
12+
app:layout_constraintBottom_toBottomOf="parent"
13+
app:layout_constraintEnd_toEndOf="parent"
14+
app:layout_constraintStart_toStartOf="parent"
15+
app:layout_constraintTop_toTopOf="parent" />
16+
17+
<Button
18+
android:id="@+id/tempStartNavigation"
19+
android:layout_width="wrap_content"
20+
android:layout_height="wrap_content"
21+
android:text="temporary start navigation"
22+
app:layout_constraintBottom_toBottomOf="parent"
23+
app:layout_constraintStart_toStartOf="parent" />
24+
25+
</androidx.constraintlayout.widget.ConstraintLayout>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<androidx.fragment.app.FragmentContainerView xmlns:android="http://schemas.android.com/apk/res/android"
3+
xmlns:tools="http://schemas.android.com/tools"
4+
android:id="@+id/navigationViewFragment"
5+
android:name="com.mapbox.navigation.examples.core.NavigationViewFragment"
6+
android:layout_width="match_parent"
7+
android:layout_height="match_parent"
8+
tools:context=".MapboxNavigationViewFragmentActivity" />

examples/src/main/res/values/strings.xml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,11 @@
3636
<string name="title_building_highlight" translatable="false">BuildingHighlight Example</string>
3737
<string name="description_building_highlight" translatable="false">Demonstrates how to highlight and extrude buildings on arrival.</string>
3838

39-
<string name="title_drop_in" translatable="false">Drop In Example</string>
40-
<string name="description_drop_in" translatable="false">Utility for demonstrating drop in ui.</string>
39+
<string name="title_navigation_view" translatable="false">Navigation View test</string>
40+
<string name="description_navigation_view" translatable="false">Utility for testing Drop-In UI.</string>
41+
42+
<string name="title_navigation_view_fragment" translatable="false">Navigation View in a Fragment test</string>
43+
<string name="description_navigation_view_fragment" translatable="false">Utility for testing Drop-In UI in a fragment.</string>
4144

4245
<string name="label_start_navigation" translatable="false">Start Navigation</string>
4346
<string name="play_history" translatable="false">Play history</string>

gradle/dependencies.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ ext {
2828
mapboxBaseAndroid : '0.5.0',
2929
androidXLifecycle : '2.4.0',
3030
androidXCoreVersion : '1.6.0',
31+
androidXArchCoreVersion : '2.1.0',
3132
androidXAppCompatVersion : '1.3.1',
3233
androidXPreferenceVersion : '1.1.0',
3334
androidXAnnotationVersion : '1.2.0',
@@ -115,11 +116,13 @@ ext {
115116
androidXPreference : "androidx.preference:preference-ktx:${version.androidXPreferenceVersion}",
116117
androidStartup : "androidx.startup:startup-runtime:${version.androidStartup}",
117118
androidXFragment : "androidx.fragment:fragment-ktx:${version.androidXFragmentVersion}",
119+
androidXArchCoreTesting : "androidx.arch.core:core-testing:${version.androidXArchCoreVersion}",
118120

119121
// lifecycle
120122
androidXLifecycleRuntime : "androidx.lifecycle:lifecycle-runtime-ktx:${version.androidXLifecycle}",
121123
androidXLifecycleLivedata : "androidx.lifecycle:lifecycle-livedata-ktx:${version.androidXLifecycle}",
122124
androidXLifecycleViewmodel: "androidx.lifecycle:lifecycle-viewmodel-ktx:${version.androidXLifecycle}",
125+
androidXLifecycleTesting : "androidx.lifecycle:lifecycle-runtime-testing:${version.androidXLifecycle}",
123126

124127
// square crew
125128
leakCanaryDebug : "com.squareup.leakcanary:leakcanary-android:${version.leakCanaryVersion}",

0 commit comments

Comments
 (0)