IOS的离线词典

时间:2013-08-29 06:53:03

标签: iphone ios objective-c dictionary word

我正在使用Offline Dictionary作为我的文字游戏应用程序,它是离线词典的好产品。今天我遇到了一个情况,我需要一个以字母“A”开头并且仅包含4个字母的随机单词。我已经尝试过以下代码来获取我所需的标准,但这并没有多大帮助,因为很多次我的标准都失败了,这导致应用程序因找到一个单词而受到攻击。

Lexicontext *dictionary = [Lexicontext sharedDictionary];
NSString *word = [dictionary randomWord]; 

此代码也失败

Lexicontext *dictionary = [Lexicontext sharedDictionary];
NSDictionary *words = [dictionary wordsWithPrefix:@"A"];

使用单词词典,我正在检查我的标准。这给了我准确的输出,但只有我在这里找到的问题是,让单词 dict在设备上花费很长时间(~13秒)。

问题:

  1. 有没有办法通过传递单词需要的起始字母和字符数来获得单词?

  2. 有人建议我为IOS提供更多离线词典。

1 个答案:

答案 0 :(得分:0)

  

NSString * word = [字典randomWord];

从字典中返回一个没有任何限制的随机单词。

另一方面正在运行

  

NSDictionary * words = [字典wordsWithPrefix:@“A”];

会返回大约1800个形容词,400个副词,500个动词的结果......并且可能会太慢:)

这样的搜索不会返回名词的结果,并且会在日志中打印警告。因此,建议限制您的搜索以防止此类情况。如果必须,您可以提前进行多个双字母前缀搜索('aa','ab','ac',...)并缓存结果。