我想在Android中创建搜索功能

我想在Android中创建搜索功能,android,json,Android,Json,我可以在Android中搜索第一次搜索,但在editbox中按back后,搜索将不起作用,ID不会显示第二次搜索结果 请解决我的问题。结果函数正在为我提供搜索结果: listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parentAdapter, View view, int position,

我可以在Android中搜索第一次搜索,但在editbox中按back后,搜索将不起作用,ID不会显示第二次搜索结果

请解决我的问题。结果函数正在为我提供搜索结果:

 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();