MiguelCatalan/MaterialSearchView

Bug at setSuggestions method

Open

#50 ouverte le 15 janv. 2016

Voir sur GitHub
 (3 commentaires) (0 réactions) (0 assignés)Java (627 forks)batch import
bughelp wanted

Métriques du dépôt

Stars
 (3 821 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

If searchView's setOnItemClickListener is called before setSuggestions(String[] suggestions) is called former listener won't get triggered because setSuggestions(String[] suggestions) has overridden setOnItemClickListener itself.

public void setSuggestions(String[] suggestions) {
    if (suggestions != null && suggestions.length > 0) {
        mTintView.setVisibility(VISIBLE);
        final SearchAdapter adapter = new SearchAdapter(mContext, suggestions, suggestionIcon);
        setAdapter(adapter);

        setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                setQuery((String) adapter.getItem(position), false);
            }
        });
    } else {
        mTintView.setVisibility(GONE);
    }
}

Please check mSuggestionsListView has no onItemClickListener attached before setting new one in the setSuggestions(String[] suggestions) method.

Guide contributeur