Je construis une application qui permet aux utilisateurs de vérifier l'heure locale partout dans le monde. L'information est récupérée en utilisant les API Google et tout fonctionne bien, mais pour de meilleurs résultats, je dois spécifier la langue que je voudrais utiliser.Détecter la langue d'entrée actuelle
Évidemment, dans mon cas, il est logique de définir la langue désirée à celle utilisée par l'utilisateur lors de la saisie d'un nom de ville. Sur iPhone c'est super facile à faire, mais je n'arrive pas à comprendre comment je pourrais obtenir ce code de langue sur macOS. Quelqu'un pourrait-il m'aider, s'il vous plaît?
Mise à jour
Après un conseil de Leo Je suis maintenant au stade où je reçois l'entrée en cours avec l'aide du cadre de carbone.
let source = TISCopyCurrentKeyboardInputSource().takeUnretainedValue()
let lang = TISGetInputSourceProperty(source, kTISPropertyInputSourceLanguages).assumingMemoryBound(to: NSArray.self).pointee
Le problème est que TISGetInputSourceProperty()
retourne un UnsafeMutableRawPointer
. Et je ne peux pas trouver un moyen de le convertir en quelque chose de lisible. Je suppose que c'est un NSArray
, mais je n'ai pas de chance d'essayer de le convertir. Quelqu'un peut-il aider s'il vous plaît?
Voulez-vous connaître la langue preferred dans les préférences de langue et de la région? – Willeke
La propriété est CFString. –