我需要最简单,最优雅的方法(使用单词)来检查给定单词在用户词典中是否可用。字词频率无关紧要,语言环境无关紧要。

是否有比ContentResolver迭代查询和cursor.getString(INDEX_WORD).equals(myWord)检查更简单的方法?

最佳答案

您应该创建一个查询,它将在UserDictionary中搜索您的单词:

getContentResolver().query(UserDictionary.Words.CONTENT_URI,
     new String[]{UserDictionary.Words._ID, UserDictionary.Words.WORD},
     //Selection
     UserDictionary.Words.WORD +" = ?",
     //Selection args
     new String[]{myWord}, null);

比您可以检查Cursor:
if(cursor.getCount()==0){
     //Word is not in dictionary
}

09-09 18:27