1

我刚刚使用了searchabledictionaryandroid 的示例,它位于samplesandroid sdk for windows 的文件夹中。(API 9 级)

definitions.txt我以相同的格式 完成了文件,就像key - value 我在搜索区域中键入一个单词时,应用程序尝试建议单词,但它没有找到确切的单词。这里是一个例子。我搜索了这个词test,这是definitions.txt

验收测试 - 意义

酸性测试 - 含义

阿尔法测试 - 意义

基准测试 - 含义

……

试飞——意义

负载测试 - 含义

……

测试 - 意义

它找到了这个列表的 15 个第一个词,(希望它不会搜索类似的词attestaion)但它没有显示确切的词test

我读了DictionaryProviderDictionaryDatabase但我无法意识到问题的根源!

问题是我如何test在列表的第一个建议确切的词?

4

1 回答 1

0

检查 Dictionary.java,你会看到 loadWords 函数。该函数打开definitions.txt文件并迭代所有行,并用“-”分割每一行并添加到Hashmap字典中。

同样在同一个文件中还有 getMatches 函数,它获取您的搜索关键字并从字典中获取结果。

不确定,但因为当您搜索建议时,会显示前几个匹配项。并且由于“test”关键字存在于太多行中,并且 (“test - meaning”) 是您的最后一个定义,您无法在建议列表中看到。

您可以尝试将“test -meaning”行移到definitions.txt 的第一行。

于 2012-04-21T13:22:00.173 回答