加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift – 打开内置的iOS Dictionary来查找单词含义

发布时间:2020-12-14 04:37:00 所属栏目:百科 来源:网络整理
导读:在我的项目中,我想打开iOS内置词典来查找单词含义,甚至更好,直接在我的应用程序中获取单词的含义. 目前我发现如何使用UITextChecker检查字符串拼写是否正确 func wordIsReal(word: String) - Bool { let checker = UITextChecker() let range = NSMakeRange(
在我的项目中,我想打开iOS内置词典来查找单词含义,甚至更好,直接在我的应用程序中获取单词的含义.

目前我发现如何使用UITextChecker检查字符串拼写是否正确

func wordIsReal(word: String) -> Bool {
    let checker = UITextChecker()
    let range = NSMakeRange(0,count(word))
    let misspelledRange = checker.rangeOfMisspelledWordInString(word,range: range,startingAt: 0,wrap: false,language: "en")

    return misspelledRange.location == NSNotFound
}

解决方法

我找到了Object-C的解决方案:

if ([UIReferenceLibraryViewController    dictionaryHasDefinitionForTerm:@"word"]) {
    UIReferenceLibraryViewController* ref = 
    [[UIReferenceLibraryViewController alloc] initWithTerm:@"word"];
    [currentViewController presentViewController:ref animated:YES completion:nil];
}

我为Swift 3编辑了它:

let word = "home"
if UIReferenceLibraryViewController.dictionaryHasDefinitionForTerm(word) {
        let ref: UIReferenceLibraryViewController = UIReferenceLibraryViewController(term: word)
        self.presentViewController(ref,animated: true,completion: nil)
}

和Swift 4一样:

let word = "home"
if UIReferenceLibraryViewController.dictionaryHasDefinition(forTerm: word) {
    let ref: UIReferenceLibraryViewController = UIReferenceLibraryViewController(term: word)
    self.present(ref,completion: nil)
}

如果单词在设备中保存的词典中有定义,则此解决方案允许打开内置字典

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读