Post

Replies

Boosts

Views

Activity

Reply to Use Siri to control parts of my CarPlay app
Yes, just what I was looking for. Thank you. Question about this, I have a CPMapButton and added an accessiblityLabel but it does not seem to tap the button when I say "tap current location": lazy var currentLocationButton: CPMapButton = { let recenterButton = CPMapButton { [weak self] button in guard let self = self else { return } if let mapView = self.mapViewController?.mapView { mapView.setUserTrackingMode(.followWithCourse, animated: true, completionHandler: nil) } } recenterButton.accessibilityLabel = NSLocalizedString("Current Location", comment: "CarPlay: Current Location Button accessiblity") recenterButton.accessibilityHint = NSLocalizedString("Show the users current location on the map", comment: "CarPlay: Show current user location on the map") let bundle = Bundle.main recenterButton.image = UIImage(named: "carplay_locate", in: bundle, compatibleWith: traitCollection) return recenterButton }()
Topic: UI Frameworks SubTopic: UIKit Tags:
Apr ’25
Reply to Method to capture voice input when using CPVoiceControlTemplate
I actually think I figured it out. It seems I need to capture the category before I change it: // Save previous category self.previousCategory = audioSession.category And then set it back before I stop the audio session being active: do { if let category = self.previousCategory { try audioSession.setCategory(category) } try audioSession.setActive(false, options: .notifyOthersOnDeactivation) } catch { print(error) } I no longer get the error that an audio session/object is running.
Topic: UI Frameworks SubTopic: UIKit Tags:
Jul ’25
Reply to How to prevent auto-zooming with IOS MapKit when using userTrackingMode = .followWithHeading? (using SwiftUI)
Setting userTrackingMode will allow iOS to control the zoom. If you want full control you need to roll your own tracking of the user location.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Sep ’21
Reply to From iOS 13.2, adding an new overlay will refresh all existing overlays
This happens again in iOS 15.
Replies
Boosts
Views
Activity
Nov ’21
Reply to MKTileOverlay flickering bug on iOS15 built with xCode 13
This was a bug in iOS 13 and was fixed, bug sadly has returned in iOS 15. See the following threads about this issue: https://developers.apple.com/forums/thread/127421 https://developer.apple.com/forums/thread/125631
Replies
Boosts
Views
Activity
Dec ’21
Reply to questions about Carplay driving task
Yes, you can use the Information template for a driving task app. This is shown in the CarPlay Programming Guide.
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Dec ’23
Reply to Swift Package with @objc cannot find interface declaration
For those looking for a solution to this, I figured it out by accident. **I was using a AppDelegate.mm file that needed to change that to AppDelegate.m instead. **
Replies
Boosts
Views
Activity
Jul ’24
Reply to Using CPVoiceControlTemplate in my CarPlay app to capture voice
So you suggest using one of the API to recognize speech such as in this example? https://developer.apple.com/tutorials/app-dev-training/transcribing-speech-to-text
Replies
Boosts
Views
Activity
Sep ’24
Reply to Use Siri to control parts of my CarPlay app
Yes, just what I was looking for. Thank you. Question about this, I have a CPMapButton and added an accessiblityLabel but it does not seem to tap the button when I say "tap current location": lazy var currentLocationButton: CPMapButton = { let recenterButton = CPMapButton { [weak self] button in guard let self = self else { return } if let mapView = self.mapViewController?.mapView { mapView.setUserTrackingMode(.followWithCourse, animated: true, completionHandler: nil) } } recenterButton.accessibilityLabel = NSLocalizedString("Current Location", comment: "CarPlay: Current Location Button accessiblity") recenterButton.accessibilityHint = NSLocalizedString("Show the users current location on the map", comment: "CarPlay: Show current user location on the map") let bundle = Bundle.main recenterButton.image = UIImage(named: "carplay_locate", in: bundle, compatibleWith: traitCollection) return recenterButton }()
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
Boosts
Views
Activity
Apr ’25
Reply to Method to capture voice input when using CPVoiceControlTemplate
I actually think I figured it out. It seems I need to capture the category before I change it: // Save previous category self.previousCategory = audioSession.category And then set it back before I stop the audio session being active: do { if let category = self.previousCategory { try audioSession.setCategory(category) } try audioSession.setActive(false, options: .notifyOthersOnDeactivation) } catch { print(error) } I no longer get the error that an audio session/object is running.
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
Boosts
Views
Activity
Jul ’25
Reply to iOS26 UINavigationController swipe from middle on maps causing issue
It looks like the new gesture added in iOS 26 is interactiveContentPopGestureRecognizer and I just needed to disable that.
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
Boosts
Views
Activity
Oct ’25