这就是我在SearchableDictionary的DictionaryDatabase.java文件中所做的。我修改了一些方法代码:
public Cursor getWordMatches(String query, String[] columns)
{
String selection = KEY_WORD + " >='" + query +"'";
return query(selection, columns);
}
private Cursor query(String selection, String[] columns)
{
SQLiteQueryBuilder builder = new SQLiteQueryBuilder();
builder.setTables(FTS_VIRTUAL_TABLE);
builder.setProjectionMap(mColumnMap);
Cursor cursor = builder.query(mDatabaseOpenHelper.getReadableDatabase(),
columns,selection,null, null, null, KEY_WORD);
if (cursor == null) {
return null;
} else if (!cursor.moveToFirst()) {
cursor.close();
return null;
}
return cursor;
}
“亚当的苹果”和“大苹果”都有“苹果”,因此会匹配'%LIKE%'。 – CommonsWare
是否有改变它,以便它只会显示以Apple开头的单词? – AuroraBlaze
或使它类似于LIKE something%的方法? ty – AuroraBlaze