UITextChecker for Swift中的ru_RU

时间:2016-06-20 11:50:48

标签: ios swift uitextchecker

我正在尝试在 Swift 2.0 中为俄语单词实现自动完成功能,我遇到了以下问题。

我已经实现了以下代码来测试 UITextChecker()的工作原理:

[ru_RU, en_CA, pt_BR, it_IT, ko_KR, nb_NO, de_DE, en_GB, sv_SE, en_AU, en_SG, es_MX, pt_PT, en_IN, fr_FR, es_ES, nl_NL, tr_TR, fi_FI, pl_PL, en_US, da_DK]

此代码打印以下结果,此结果对我来说很有用:

语言清单:

Optional([leonine, leopard, leopardess,leopardesses, leopards, leotard, leotarded, leotards])

completionsForPartialWordRange:

Optional([Leo, lei, lek, lea, led, lee, leg, let, leu, lev, lex, lao, loo, geo, cleo, oleo, lego, leto, leon])

guessesForWordRange:

    let textChecker = UITextChecker()
    let partial = "кош"
    let completions = textChecker.completionsForPartialWordRange(NSRange(0..<partial.utf16.count), inString: partial,language: "ru_RU")
    let completions2 = textChecker.guessesForWordRange(NSRange(0..<partial.utf16.count), inString: partial, language: "ru_RU")
    print(completions)
    print(completions2)

之后我为 ru_RU

实现了相同的代码
completionsForPartialWordRange

ru_RU始终为Optional([]) 返回空数组:

"кош"
<{1}}的

实际结果至少应为"кошка",但空数组

尽管有这样的猜测,但是对于ru_RU来说,forWordRange正常工作:

Optional([каш, ко, кол, коб, код, кое, кож, коз, кои, кой, кок, ком, кон, коп, кор, кос, кот, коф, кою, куш, кэш, нош, шок, ковш, коуш, коша, коше, коши, кошм, кошт, кошу])

我尝试使用不同的俄语单词,但我始终从completionsForPartialWordRange方法获取空数组。 我在代码中有错误或者是一些已知的Apple bug吗?如何使用ru_RU方法获取completionsForPartialWordRange的完成情况?

1 个答案:

答案 0 :(得分:0)

如果它可以帮助某人,我会从他们的错误报告服务中提供Apple答案。

在我写信给Apple之后,我收到了以下答案:

  

工程已确定您的错误报告是   重复另一个问题,将被关闭。

     

您的问题是原始错误报告的打开或关闭状态   重复显示在黄色的“XXXXXXXX的副本”部分中   bug报告用户界面。此部分显示在顶部附近   错误编号,标题下的右列错误详细信息视图   国家,产品和等级。

不幸的是,没有其他信息。

更新

已在IOS 10.1中修复