Java tutorial
/* * SkyTube * Copyright (C) 2015 Ramon Mifsud * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation (version 3 of the License). * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package free.rm.skytube.gui.activities; 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.MenuInflater; import android.view.MenuItem; import free.rm.skytube.R; /** * Main activity (launcher). This activity holds {@link free.rm.skytube.gui.fragments.VideosGridFragment}. */ public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(final Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main_activity_menu, menu); // setup the SearchView (actionbar) final MenuItem searchItem = menu.findItem(R.id.menu_search); final SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem); searchView.setQueryHint(getString(R.string.search_videos)); searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() { @Override public boolean onQueryTextChange(String newText) { return false; } @Override public boolean onQueryTextSubmit(String query) { // collapse the action-bar's search view searchView.setQuery("", false); searchView.setIconified(true); menu.findItem(R.id.menu_search).collapseActionView(); // run the search activity Intent i = new Intent(MainActivity.this, SearchActivity.class); i.setAction(Intent.ACTION_SEARCH); i.putExtra(Intent.ACTION_SEARCH, query); startActivity(i); return true; } }); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.menu_preferences: Intent i = new Intent(this, PreferencesActivity.class); startActivity(i); return true; } return super.onOptionsItemSelected(item); } }