在ActionBar上使用SearchView进行搜索时,我们一般使用searchview.setOnQueryTextListener()中的两个方法来提交搜索结果。我个人项目的代码如下,对SearchView中如何进行搜索操作不是很熟的同学也可以小小参考下,
sv.setOnQueryTextListener(new OnQueryTextListener(){
@Override
public boolean onQueryTextChange(String newText) {
// TODO Auto-generated method stub
return true;
}
@Override
public boolean onQueryTextSubmit(String query) {
list.clear();
href.clear();
String str = null;
try {//encoding Chinese character
str = new String(query
.trim().getBytes(), "ISO-8859-1");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
SearchPost sp = new SearchPost(SEARCH_URL + str);
new Thread(sp).start();
return true;
}
});
项目在虚拟机上测试时一切正常,但是在本人的DesireHD上测试时,搜索结果却被显示了两遍(本应是1,2,3,结果是1,2,3,1,2,3,