我想在Android中创建搜索功能
我可以在Android中搜索第一次搜索,但在editbox中按back后,搜索将不起作用,ID不会显示第二次搜索结果 请解决我的问题。结果函数正在为我提供搜索结果:我想在Android中创建搜索功能,android,json,Android,Json,我可以在Android中搜索第一次搜索,但在editbox中按back后,搜索将不起作用,ID不会显示第二次搜索结果 请解决我的问题。结果函数正在为我提供搜索结果: listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parentAdapter, View view, int position,
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parentAdapter, View view, int position,
long id) {
// We know the View is a <extView so we can cast it
TextView clickedView = (TextView) view;
Toast.makeText(Search.this, "Item with id [" + id + "] - Position [" + position + "] - Planet [" + clickedView.getText() + "]", Toast.LENGTH_SHORT).show();
}
});
Runnable r2 = new Runnable() {
@Override
public void run() {
finish();
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
}
};
Runnable r = new Runnable() {
public void run() {
finish();
overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
}
};
// we register for the contextmneu
registerForContextMenu(listView);
// TextFilter
listView.setTextFilterEnabled(true);
ev1.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start, int before,
int count) {
pw.setVisibility(View.VISIBLE);
System.out.println("Text [" + s + "] - Start [" + start + "] - Before [" + before + "] - Count [" + count + "]");
if (count < before) {
// We're deleting char so we need to reset the adapter data
// listView.setAdapter(null);
//adapter.resetData();
adapter.getFilter().filter(s.toString());
adapter.notifyDataSetChanged();
}
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
;
}
public void afterTextChanged(Editable s) {
searchre = ev1.getText().toString();
results();
}
});
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
searchre = ev1.getText().toString();
Toast.makeText(getApplicationContext(), "" + searchre, Toast.LENGTH_LONG).show();
//listView.setAdapter(null);
// results();
}
});
}
listView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
public void onItemClick(适配器视图父适配器、视图视图、int位置、,
长id){
//我们知道视图是一个视图,这仅仅是因为如果文本被删除,您不会进行搜索
if (count < before)
谢谢。但我的问题是,当我第二次搜索时,列表不为空,也没有显示结果。我感到困惑。第一次搜索可以。请帮助我…那么,你是否尝试删除“if(countadapter.getFilter().filter(s.toString());
adapter.notifyDataSetChanged();