我有一个列表视图,上面有一个编辑文本。在编辑文本中,将从列表视图中搜索数据并以编辑文本显示。在列表视图中,一些数据是两个单词。例如,列表视图包含“汽车”,“红色汽车”,“蓝色汽车”。现在,如果我在编辑文本中键入c,它只显示汽车,而不是其他两个。当键入c时,如何搜索以上三种。这是我的代码......
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
wordlength = ed.getText().length();
editsort.clear();
for(int i=0;i<word.length;i++){
if(wordlength<=word[i].length()){
if(ed.getText().toString().equalsIgnoreCase((String) word[i].subSequence(0, wordlength))){
editsort.add(word[i]);
}
}
}
...谢谢
答案 0 :(得分:1)
如果word
是您要搜索的字符串数组:
public void onTextChanged(CharSequence s, int start, int before, int count) {
String searchFor = ed.getText().toString();
editsort.clear();
for( String whole : word ){
for( String part : whole.split( " " ) ) {
if( part.startsWith( searchFor ) );
editsort.add( whole );
}
}
}