Additional Location Details
Accessing Additional Details in Code
fun printDetails(location: MPLocation) {
// Get the list of additional details from the location
val details = location.additionalDetails
if (details.isNullOrEmpty()) return // No details to print
for (detail in details) {
// Only print active details
if (detail.active != true) continue
// Print a message depending on the detail type
print(
when (detail.detailType) {
MPDetailType.Text ->
// Text details (e.g. description)
"${location.name} additional information: ${detail.value}"
MPDetailType.Phone ->
// Phone details (all details have a key for identification)
"${location.name}'s phone number (${detail.key}): ${detail.value}"
MPDetailType.URL ->
// URL details (details can have user friendly display text)
"${location.name}'s website: ${detail.value} (label: ${detail.displayText})"
MPDetailType.Email ->
// Email details (details can be supplied with an icon URL)
"${location.name}'s email: ${detail.value} (icon: ${detail.icon})"
MPDetailType.OpeningHours ->
// Opening hours (has a special field 'openingHours' that is only used for this)
"${location.name} opening hours: ${detail.openingHours?.toString()}"
null ->
// Unknown detail type
"Unknown detail type for ${location.name}"
}
)
}
}Filtering and Printing Specific Details
Displaying Additional Details in Jetpack Compose UI
Example: Show All Phone Numbers
Example: Show All Details in a Single UI
Last updated
Was this helpful?