2 years later…
I finally found here inspiration here for something very close to what I wanted:
https://stackoverflow.com/questions/28152526/how-do-i-open-phone-settings-when-a-button-is-clicked
Button action to switch language:
		@objc func openSettings() {
				
				guard let settingsUrl = URL(string: UIApplication.openSettingsURLString) else { return }
				
				if UIApplication.shared.canOpenURL(settingsUrl) {
						UIApplication.shared.open(settingsUrl, completionHandler: nil)
				}
		}
		
		@IBAction func toggleLanguagePopover() {
				
				var languages : [Language] = []
				for country in Language.allLanguages { // I have defined the list of languages the app is localised for
						languages.append(country)
				}
				
				var anAction : UIAlertAction
				var alertStyle = UIAlertController.Style.alert
				let alertController = UIAlertController(
						title: NSLocalizedString("Language", comment: ""),
						message: NSLocalizedString("Select a language, comment: "toggleLanguagePopover"), preferredStyle: alertStyle)	
				for i in 0..<languages.count {
						anAction = UIAlertAction(title: languages[i].flag + " " + languages[i].fullname, style: .default, handler: { (action) -> Void in self.openSettings()} )
						anAction.isEnabled = Global.shared.systemLanguage != Language.allLanguages[i] // Button for the already selected language is disabled
						alertController.addAction(anAction)
				}
				
			 let cancelAction = UIAlertAction(title: NSLocalizedString("Ok", comment: ""), style: .destructive, handler: nil)
						alertController.addAction(cancelAction)
				present(alertController, animated: true, completion: nil)
		}
This brings you to the app settings page with direct access to preferred languages list.
Click on language and return to your app from the navigation button. You have switched the app language.
It's very fast.
Only caveat, the device language does not change, so settings remain displayed in device's language. But that's a really minor annoyance.
Topic:
Accessibility & Inclusion
SubTopic:
General
Tags: