package ngvl.android.demosearch; import android.app.SearchManager; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.support.v4.view.MenuItemCompat; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.SearchView; import android.view.Menu; import android.view.MenuItem; import android.widget.Toast; public class MainActivity extends AppCompatActivity implements SearchView.OnQueryTextListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_search, menu); MenuItem searchItem = menu.findItem(R.id.search); SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem); searchView.setOnQueryTextListener(this); SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE); searchView.setSearchableInfo(searchManager.getSearchableInfo( new ComponentName(this, SearchableActivity.class))); searchView.setIconifiedByDefault(false); return true; } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); if (Intent.ACTION_SEARCH.equals(intent.getAction())) { String query = intent.getStringExtra(SearchManager.QUERY); Toast.makeText(this, "Searching by: "+ query, Toast.LENGTH_SHORT).show(); } else if (Intent.ACTION_VIEW.equals(intent.getAction())) { String uri = intent.getDataString(); Toast.makeText(this, "Suggestion: "+ uri, Toast.LENGTH_SHORT).show(); } } @Override public boolean onQueryTextSubmit(String query) { // User pressed the search button return false; } @Override public boolean onQueryTextChange(String newText) { // User changed the text return false; } }