3

I implemented simple search box in my Android 2.2 on Action Bar. Now I'd like to add auto complete do my search box. I'd like to display prompt from my server, for example:

  1. User write "It"
  2. I receive "It" from box and send it to my server
  3. Server response: "Item1", "Item12", "Item2"
  4. App show the user "Item1", "Item12", "Item2" - problem here
  5. user write "Item1"
  6. Server response "Item1", "Item12"

etc.

I receive text from search box and send it to my server. Server response data but I don't know how can i simply implement list below my search box.

I'd like to implement it without using Sherlock but it should work on Android 2.2.

My code:

public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main_activity_actions, menu);

    MenuItem searchItem = menu.findItem(R.id.action_search);
    mSearchView = (SearchView) MenuItemCompat.getActionView(searchItem);
    setupSearchView(searchItem);

     return super.onCreateOptionsMenu(menu);
   }

@Override
public boolean onQueryTextChange(String arg0) {

    // 1. get text from search box and send to my server
    // 2. my server response and sent data
    // 3. response from server should be display below search box
    Log.d("onQueryTextChange", arg0);
    return false;
}

@Override
public boolean onQueryTextSubmit(String arg0) {

    Log.d("onQueryTextSubmit", arg0);
    return false;
}

Here is the function that work but how can I change it to show results from onQueryTextChange() ?

private void setupSearchView(MenuItem searchItem) {
        Log.d("setupSearchView", "enter");
        if (isAlwaysExpanded()) {
            mSearchView.setIconifiedByDefault(false);
        } else {
            searchItem.setShowAsActionFlags(MenuItem.SHOW_AS_ACTION_IF_ROOM
                    | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
        }
        SearchManager searchManager = (SearchManager)getSystemService(Context.SEARCH_SERVICE);
        if (searchManager != null) {
            List<SearchableInfo> searchables =searchManager.getSearchablesInGlobalSearch();
            SearchableInfo info =searchManager.getSearchableInfo(getComponentName());
            for (SearchableInfo inf : searchables) {
                if (inf.getSuggestAuthority() != null
                        && inf.getSuggestAuthority().startsWith("applications")){
                    info = inf;
                }
            }
            mSearchView.setSearchableInfo(info);
        }
        mSearchView.setOnQueryTextListener(this);
    }

Can anyone help me ?

user1518451
  • 1,767
  • 6
  • 23
  • 26
  • [Here](http://stackoverflow.com/questions/15459882/android-actionbarsherlock-searchview-setoncloselistener-is-not-working/18747346#18747346) in my post I put code for searching - it is working on android 2.2 and more. Have a look :) – Dariusz Mazur Sep 11 '13 at 17:31
  • My code also work but I have no idea how can i display response suggestions from server below search box. Any suggestions ? – user1518451 Sep 11 '13 at 17:41
  • Here you have to done it [link](http://stackoverflow.com/questions/15804805/android-actionbar-searchview-as-autocomplete) – Dariusz Mazur Sep 11 '13 at 17:45
  • It isn't solve my problem because I use search view. – user1518451 Sep 11 '13 at 18:21
  • So I don't know if it is possible. You can check "SearchView.OnSuggestionListener" from [link](http://developer.android.com/reference/android/widget/SearchView.html) maybe you will be able to do it. – Dariusz Mazur Sep 11 '13 at 18:27
  • SearchView.OnSuggestionListener implements method onSuggestionClick() and onSuggestionSelect but I search method to add suggestion ... – user1518451 Sep 12 '13 at 18:56

0 Answers0