2017-04-11 15 views
0

Miguel Catalanが開発したMaterial searchビューをthis repoから使用しています。私は提案のリストを持っています。ユーザーが提案を選択すると、フィルタリングされた結果が表示されます。ここでの私の問題は、テキスト作成イベントやオプションの選択では何も起こりません。私は私の主な活動ファイルでこれを追加しました: - 私は何のメソッドが呼び出されなかった意味デバッグログには何も表示されないMaterialSearchViewのOnClickアイテム選択android

MaterialSearchView searchView = (MaterialSearchView) findViewById(R.id.search_view); 
    //searchView.setSuggestions(getResources().getStringArray(R.array.query_suggestions)); 
    String [] suggestions = {"Item1","Item2","Item3"}; 
    searchView.setSuggestions(suggestions); 
    searchView.setOnQueryTextListener(new MaterialSearchView.OnQueryTextListener() { 
     @Override 
     public boolean onQueryTextSubmit(String query) { 
      Log.d("here",query); 
      return false; 
     } 

     @Override 
     public boolean onQueryTextChange(String newText) { 
      Log.d("here",newText); 

      return false; 
     } 

    }); 

    searchView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      Log.d("ItemClick","onItemClick,"); 
     } 
    }); 

    searchView.setOnSearchViewListener(new MaterialSearchView.SearchViewListener() { 
     @Override 
     public void onSearchViewShown() { 
      Log.d("here","search"); 
     } 

     @Override 
     public void onSearchViewClosed() { 
      Log.d("here","search"); 
     } 
    }); 

。誰もがここに理由があると言うことができますか? enter image description here }

答えて

1
searchView.setOnItemSelectedListener(new AdapterView.OnItemClickListener() { 

    @Override 
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
     Log.d("ItemClick","onItemClick,"); 
    } 
}); 

はonitemclickListenerの代わりにonitemSelectedListener使用してください。お役に立てれば。 SearchViewため

+0

をインポートする必要があります)ので、 \ – user2714823

+0

[link] https://material.io/guidelines/patterns/selection.html このリンクを確認してください。 – jagteshwar751

0

セットアダプター、OnItemClickは結果で

mSearchView.setAdapter(new SearchAdapter(this, results)); 

に動作します[]文字列であると あなたはSearchAdapter MaterialSearchViewがsetOnItemSelectedListener()メソッドだけsetOnItemClickListenerを(持っていない import com.miguelcatalan.materialsearchview.SearchAdapter;

関連する問題