下面列出了android.support.v4.view.MenuItemCompat#collapseActionView ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public void onBackPressed() {
super.onBackPressed();
if (drawerLayout.isDrawerOpen(GravityCompat.START)) {
drawerLayout.closeDrawer(GravityCompat.START);
} else if (drawerLayout.isDrawerOpen(GravityCompat.END)) { /*Closes the Appropriate Drawer*/
drawerLayout.closeDrawer(GravityCompat.END);
} else {
this.finish();
}
if (searchView != null && !searchView.isIconified()) {
MenuItemCompat.collapseActionView(mMenuItem);
return;
}
}
@Override
public void run() {
if (searchItem != null) MenuItemCompat.collapseActionView(searchItem);
removeAllViews();
buildpropItem = Buildprop.getProps();
for (int i = 0; i < buildpropItem.size(); i++) {
PopupCardView.DPopupCard mPropCard = new PopupCardView.DPopupCard(null);
mPropCard.setDescription((String) buildpropItem.keySet().toArray()[i]);
mPropCard.setItem((String) buildpropItem.values().toArray()[i]);
mPropCard.setOnClickListener(BuildpropFragment.this);
addView(mPropCard);
}
try {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
title.setText(getString(R.string.items_found, buildpropItem.size()));
refreshLayout.setRefreshing(false);
}
});
} catch (NullPointerException ignored) {
}
}
private void clearSearchView() {
if (searchView != null && itemSearch != null) {
if (searchView.getQuery().length() > 0) {
searchView.setQuery("", false);
}
MenuItemCompat.collapseActionView(itemSearch);
}
itemsFilter = "";
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_search, menu);
MenuItem searchItem = menu.findItem(R.id.action_search);
SearchView searchView =
(SearchView) MenuItemCompat.getActionView(searchItem);
searchView.setOnQueryTextListener(this);
searchView.setInputType(InputType.TYPE_TEXT_FLAG_CAP_WORDS);
searchView.setQuery(mPresenter.getSearchModels().get(0).getQuery(), false);
if (isInputMode) {
MenuItemCompat.expandActionView(searchItem);
} else {
MenuItemCompat.collapseActionView(searchItem);
}
MenuItemCompat.setOnActionExpandListener(searchItem, this);
AutoCompleteTextView autoCompleteTextView = searchView
.findViewById(android.support.v7.appcompat.R.id.search_src_text);
autoCompleteTextView.setThreshold(0);
autoCompleteTextView.setAdapter(new ArrayAdapter<>(this,
R.layout.layout_item_simple_list, mPresenter.getSearchRecordList()));
autoCompleteTextView.setDropDownBackgroundDrawable(new ColorDrawable(ViewUtils.getWindowBackground(getActivity())));
autoCompleteTextView.setOnItemClickListener((parent, view, position, id) -> {
onQueryTextSubmit(parent.getAdapter().getItem(position).toString());
});
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onBackPressed() {
if (searchItem != null && MenuItemCompat.isActionViewExpanded(searchItem)) {
MenuItemCompat.collapseActionView(searchItem);
return true;
}
return false;
}
@Override
public boolean onQueryTextSubmit(String query) {
if (!TextUtils.isEmpty(query)) {
MenuItemCompat.collapseActionView(searchMenuItem);
loadWeatherData(query);
}
return true;
}
public void search(final String query, final boolean autoplay, final String artist, final String album, final String title) {
if(skipSearch) {
skipSearch = false;
return;
}
currentQuery = query;
BackgroundTask<SearchResult> task = new TabBackgroundTask<SearchResult>(this) {
@Override
protected SearchResult doInBackground() throws Throwable {
SearchCritera criteria = new SearchCritera(query, MAX_ARTISTS, MAX_ALBUMS, MAX_SONGS);
MusicService service = MusicServiceFactory.getMusicService(context);
return service.search(criteria, context, this);
}
@Override
protected void done(SearchResult result) {
searchResult = result;
recyclerView.setAdapter(adapter = new SearchAdapter(context, searchResult, getImageLoader(), largeAlbums, SearchFragment.this));
if (autoplay) {
autoplay(query, artist, album, title);
}
}
};
task.execute();
if(searchItem != null) {
MenuItemCompat.collapseActionView(searchItem);
}
}
@Override
public boolean onQueryTextSubmit(String s) {
bookadapter = null;
page = 1;
searchKeyword = s.trim();
searchView.clearFocus();
MenuItemCompat.collapseActionView(menuItemSearch);
swipe_refresh.setRefreshing(true);
loadData();
return true;
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
String query = intent.getStringExtra(SearchManager.QUERY);
doSearch(query);
MenuItemCompat.collapseActionView(searchMenuItem);
}
}
public void toggleDebugMode() {
SharedPreferences prefs = getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean(getString(R.string.settings_key_debug), !isInDebugMode());
editor.commit();
MenuItemCompat.collapseActionView(searchMenuItem);
supportInvalidateOptionsMenu();
if (isInDebugMode()) {
Toast.makeText(this, getString(R.string.debug_settings_on), Toast.LENGTH_LONG).show();
} else {
Toast.makeText(this, getString(R.string.debug_settings_off), Toast.LENGTH_LONG).show();
}
}
private void stopMenuLoading() {
MenuItemCompat.collapseActionView(mFollowMenu);
MenuItemCompat.setActionView(mFollowMenu, null);
}
private void stopMenuLoading() {
MenuItemCompat.collapseActionView(mFollowMenu);
MenuItemCompat.setActionView(mFollowMenu, null);
}
private void collapseSearchViewWhenSwitch() {
if (getFragmentManager().findFragmentById(R.id.container) instanceof SearchFragment) {
MenuItemCompat.collapseActionView(mSearchItem);
mSpinnerSortOrder.setVisibility(View.GONE);
}
}
@Override
protected void onReturn() {
MenuItemCompat.collapseActionView(mSearchItem);
}