gpt4 book ai didi

swift - 检测当前输入语言

转载 作者:搜寻专家 更新时间:2023-10-31 22:58:32 25 4
gpt4 key购买 nike

我正在构建一个应用程序,允许用户在世界任何地方查看本地时间。正在使用 Google API 获取信息并且一切正常,但为了获得最佳结果,我需要指定我想要使用的语言。

显然,就我而言,将所需语言设置为用户在键入城市名称时使用的语言是有意义的。在 iPhone 上,这非常容易做到,但我不知道如何在 macOS 上获得这种语言代码。谁能帮帮我?

更新

根据 Leo 的建议,我现在正处于在碳框架的帮助下获得当前输入的阶段。

let source = TISCopyCurrentKeyboardInputSource().takeUnretainedValue()
let lang = TISGetInputSourceProperty(source, kTISPropertyInputSourceLanguages).assumingMemoryBound(to: NSArray.self).pointee

问题是 TISGetInputSourceProperty() 返回一个 UnsafeMutableRawPointer。而且我找不到将其转换为可读内容的方法。我假设它是一个 NSArray,但我没有运气尝试转换它。有人可以帮忙吗?

最佳答案

let source = TISCopyCurrentKeyboardInputSource().takeUnretainedValue()
let value = TISGetInputSourceProperty(source, kTISPropertyInputSourceLanguages)
if (value != nil) {
var name = Unmanaged<AnyObject>.fromOpaque(value!).takeUnretainedValue() as? String
}

我从这里学习的 https://github.com/noraesae/kawa/blob/master/kawa/InputSourceManager.swift

关于swift - 检测当前输入语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40821120/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com