【问题标题】:Keyboard extension no common words, no autocorrect键盘扩展没有常用词,没有自动更正
【发布时间】:2014-12-30 16:56:44
【问题描述】:

我一直在开发一个小的键盘扩展,现在我已经达到了实现自动更正的目的,或者可以显示用户可能正在尝试编写的内容。 键盘是我自己的,所以就丹麦语吧。

文档说 UILexicon 包含一些常用词,但它没有。它包含我的联系人,甚至都不起作用。我唯一得到的是这样的:morten=morten,它应该是morten=Morten。都是这样的。

然后我尝试了 UITextChecker,并在操场上尝试了这个(Swift,但键盘在 ObjectiveC 中: import UIKit var str:String = "h" var textChecker:UITextChecker = UITextChecker(); var range:NSRange = NSMakeRange(0, 1) var lan:NSArray = UITextChecker.availableLanguages() var t:String = lan[1] as String var ar:NSArray = textChecker.completionsForPartialWordRange(range, inString: str, language: t)!

这会返回除 da_DK 之外的任何语言的结果,这有点奇怪。

我该怎么做?我应该下载丹麦语词典并使用某种 mysql 数据库在应用程序中使用它吗? 是我的代码有什么问题,还是 UILexicon 被丹麦语破坏了?

【问题讨论】:

    标签: ios objective-c keyboard ios-keyboard-extension


    【解决方案1】:

    尝试查看UITextChecker 类。

    使用起来非常困难:

    NSString * test = @"stavefej";
    
    NSArray * suggestions = [self.spellChecker guessesForWordRange:NSMakeRange(0, [test length]) inString:test language:@"da_DK"];  
    NSArray * autoCom = [self.spellChecker completionsForPartialWordRange:NSMakeRange(0, [test length])  inString:test language:@"da_DK"];
    

    【讨论】:

    • 这确实有效。我不确定为什么我尝试的东西不起作用,但非常感谢! (也可以使用丹麦语:D)
    • UILexicon 不用于拼写检查,而仅用于联系人列表中的缩写和名称:)。
    • 文档使它听起来应该包含常用词,但是:常用词词典。直接取自developer.apple.com/library/prerelease/ios/documentation/UIKit/…
    • 是的。可以这样读。然而,Apple 术语中的常用词是 iphone = iPhone、ios=iOS 等。
    • 是的,我发现了,但这很令人困惑。尽管如此,感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-19
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    • 1970-01-01
    • 2016-03-28
    • 1970-01-01
    相关资源
    最近更新 更多