Hi,
I’m using the Mapple Directions SDK to display a route between two points.
Here’s my method to launch the DirectionFragment
:
kotlin
private fun launchDirectionFragment() {
if (currentLocation == null || destinationPoint == null) {
Toast.makeText(this, "Set both current location and destination", Toast.LENGTH_SHORT).show()
return
}
val origin = DirectionPoint.setDirection(
Point.fromLngLat(currentLocation!!.longitude, currentLocation!!.latitude),
"Current Location", "Origin"
)
val destination = DirectionPoint.setDirection(
Point.fromLngLat(destinationPoint!!.longitude, destinationPoint!!.latitude),
"Selected Location", "Destination"
)
// Direction Options
val directionOptions = DirectionOptions.builder()
.origin(origin)
.destination(destination)
.profile(DirectionsCriteria.PROFILE_DRIVING)
.resource(DirectionsCriteria.RESOURCE_ROUTE_TRAFFIC)
.overview(DirectionsCriteria.RESOURCE_ROUTE_TRAFFIC)
.steps(true)
.showStartNavigation(true)
.showDefaultMap(true)
.showRouteReportSummary(true)
.theme(DirectionOptions.THEME_DAY)
.build()
// Create direction fragment
val directionFragment = DirectionFragment.newInstance(directionOptions)
// Launch fragment in container
supportFragmentManager.beginTransaction()
.replace(R.id.fragment_container, directionFragment, DirectionFragment::class.java.simpleName)
.addToBackStack(null)
.commit()
}
````.