讲到这里我们应该了解一个dictionary.db中的t_words表的结果,该表只有两个字段:english和chinese。分别表示单词的英文和中文描述。如果要获得单词的中文描述,只需要查找chinese字段即可。如onClick方法中的代码所示。查询单词的效果如图3所示。
图3查询英文单词如果显示以输入字符串开头的单词列表
虽然到目前为止,我们的英文词典已经可以正常工作了,但为了方便读者使用,在本节将添加单词输入的自动提示功能。也就是说,如果读者在 AutoCompleteTextView组件中输入单词的前几个字母,该组件就会自动列出数据库中所有以该字符串开头的单词。效果如图2所示。拥有这样 的功能就可以使用户在只知道单词的前几个字母时也可以查找到相应的单词。
由于AutoCompleteTextView组件使用了自定义的Adapter类,下面先给出这个自定义的Adapter类的完整代码。
代码
publicclassDictionaryAdapterextendsCursorAdapter
{privateLayoutInflater layoutInflater;
@OverridepublicCharSequence convertToString(Cursor cursor)
{returncursor==null?"": cursor.getString(cursor
.getColumnIndex("_id"));
}//用于将_id字段(也就是english字段)的值设置