Example usage for android.support.v4.view MenuItemCompat setActionView

List of usage examples for android.support.v4.view MenuItemCompat setActionView

Introduction

In this page you can find the example usage for android.support.v4.view MenuItemCompat setActionView.

Prototype

public static MenuItem setActionView(MenuItem item, View view) 

Source Link

Document

Set an action view for this menu item.

Usage

From source file:pl.selvin.android.listsyncsample.ui.SyncActivity.java

public boolean onPrepareOptionsMenu(Menu menu) {
    MenuItem item = menu.findItem(R.id.refresh);
    item.setVisible(true);/* w  w  w . ja v  a  2  s .com*/
    if (!showMenu) {
        MenuItemCompat.setActionView(item, R.layout.actionbar_progress);
    } else {
        MenuItemCompat.setActionView(item, null);
    }
    return true;
}

From source file:com.laevatein.internal.ui.helper.PreviewHelper.java

public static void setUpActionItem(final ImagePreviewActivity activity, Menu menu) {
    final MenuItem item = menu.findItem(R.id.l_action_selection_state);
    if (item == null) {
        return;/*from  www  .j a v  a2  s.  c  o m*/
    }
    final Item photo = activity.getIntent().getParcelableExtra(ImagePreviewActivity.EXTRA_ITEM);
    ActionViewResources resources = activity.getIntent()
            .getParcelableExtra(ImagePreviewActivity.EXTRA_CHECK_VIEW_RES);
    final SelectionSpec spec = activity.getIntent()
            .getParcelableExtra(ImagePreviewActivity.EXTRA_SELECTION_SPEC);
    final ErrorViewSpec errorSpec = activity.getIntent()
            .getParcelableExtra(ImagePreviewActivity.EXTRA_ERROR_SPEC);
    if (resources == null) {
        MenuItemCompat.setActionView(item, R.layout.l_action_layout_checkbox);
    } else {
        MenuItemCompat.setActionView(item, resources.getLayoutId());
    }
    final CheckBox checkBox = (CheckBox) MenuItemCompat.getActionView(item)
            .findViewById(resources.getCheckBoxId());
    checkBox.setChecked(activity.getStateHolder().isChecked(photo.buildContentUri()));
    checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            ViewPager pager = (ViewPager) activity.findViewById(R.id.l_pager);
            Uri currentUri = ((PreviewPagerAdapter) pager.getAdapter()).getUri(pager.getCurrentItem());
            if (!isChecked) {
                activity.getStateHolder().setChecked(currentUri, false);
                return;
            }
            UncapableCause cause = PhotoMetadataUtils.isAcceptable(activity, spec, currentUri);
            int currentCount = activity.getStateHolder().getChechedCount();
            if (!activity.getStateHolder().isChecked(currentUri)
                    && currentCount + 1 > spec.getMaxSelectable()) {
                cause = UncapableCause.OVER_COUNT;
            }
            if (cause == null) {
                activity.getStateHolder().setChecked(currentUri, true);
                return;
            }

            ErrorViewResources error = cause.getErrorResources(errorSpec);
            ErrorViewUtils.showErrorView(activity, error);
            checkBox.setChecked(false);
            activity.getStateHolder().setChecked(currentUri, false);
        }
    });
}

From source file:org.kaaproject.kaa.demo.iotworld.smarthome.fragment.device.AbstractGeoFencingDeviceFragment.java

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.geofencing, menu);
    MenuItem geofencingItem = menu.findItem(R.id.action_geofencing);
    MenuItemCompat.setActionView(geofencingItem, mGeoFencingStatusSpinner);
    super.onCreateOptionsMenu(menu, inflater);
}

From source file:se.eliga.aves.birdlist.BirdListFragment.java

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    inflater.inflate(R.menu.main_menu, menu);

    MenuItem item = menu.findItem(R.id.species_search);
    SearchView searchView = new SearchView(((MainActivity) getActivity()).getActionBar().getThemedContext());
    MenuItemCompat.setShowAsAction(item,
            MenuItemCompat.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW | MenuItemCompat.SHOW_AS_ACTION_IF_ROOM);
    MenuItemCompat.setActionView(item, searchView);
    final BirdListAdapter birdListAdapter = (BirdListAdapter) getListAdapter();
    searchView.setOnCloseListener(new SearchView.OnCloseListener() {
        @Override/* www  . java  2s .  c om*/
        public boolean onClose() {
            birdListAdapter.setFilterString(null);
            birdListAdapter.refresh();
            birdListAdapter.notifyDataSetChanged();
            return false;
        }
    });
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            birdListAdapter.setFilterString(query);
            birdListAdapter.refresh();
            birdListAdapter.notifyDataSetChanged();
            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            birdListAdapter.setFilterString(newText);
            birdListAdapter.refresh();
            birdListAdapter.notifyDataSetChanged();
            return true;
        }
    });
}

From source file:com.mifos.mifosxdroid.fragments.GroupFragment.java

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    if (item.getItemId() == R.id.action_sync) {
        LayoutInflater inflater = (LayoutInflater) getActivity()
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View syncProgress = inflater.inflate(R.layout.sync_progress, null);
        MenuItemCompat.setActionView(item, syncProgress);
        if (centerId != -1) {
            RepaymentTransactionSyncService syncService = new RepaymentTransactionSyncService(this, centerId);
            syncService.syncRepayments(getActivity());
        }//from   w  ww.j ava2s. co  m
    }
    return super.onOptionsItemSelected(item);
}

From source file:com.mifos.mifosxdroid.fragments.GroupFragment.java

private void setAdapter() {
    groupList.clear();/*from   w w w .ja  va2  s .  co m*/
    groupList.addAll(getAllGroups());
    if (adapter == null) {
        adapter = new MifosGroupListAdapter(getActivity(), groupList);
        lv_group.setAdapter(adapter);
    }
    lv_group.setOnItemClickListener(this);
    lv_group.setEmptyView(progressGroup);
    adapter.notifyDataSetChanged();
    if (groupList.size() == 0) {
        if (syncItem != null)
            MenuItemCompat.setActionView(syncItem, null);

        SharedPreferences preferences = getActivity()
                .getSharedPreferences(OfflineCenterInputActivity.PREF_CENTER_DETAILS, Context.MODE_PRIVATE);
        date = preferences.getString(OfflineCenterInputActivity.TRANSACTION_DATE_KEY, null);
        tv_empty_group.setVisibility(View.VISIBLE);
        tv_empty_group.setText("There is no data for center " + centerId + " on " + date);
        progressGroup.setVisibility(View.GONE);

    } else {
        tv_empty_group.setVisibility(View.GONE);
    }

}

From source file:com.github.longkai.zhihu.ui.HotItemsFragment.java

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    MenuItem search = menu.add(android.R.string.search_go);
    search.setIcon(R.drawable.action_search_light);
    // earn some room in action bar
    MenuItemCompat.setShowAsAction(search, MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
    final View searchView = SearchViewCompat.newSearchView(getActivity());
    if (searchView != null) {
        SearchViewCompat.setOnQueryTextListener(searchView, new SearchViewCompat.OnQueryTextListenerCompat() {
            @Override//from   w  w  w .j a  v  a 2s .  c om
            public boolean onQueryTextChange(String newText) {
                String newFilter = !TextUtils.isEmpty(newText) ? newText : null;
                if (keywords == null && newFilter == null) {
                    return true;
                }
                if (keywords != null && keywords.equals(newFilter)) {
                    return true;
                }
                keywords = newFilter;
                getLoaderManager().restartLoader(0, null, HotItemsFragment.this);
                return true;
            }
        });
        SearchViewCompat.setOnCloseListener(searchView, new SearchViewCompat.OnCloseListenerCompat() {
            @Override
            public boolean onClose() {
                if (!TextUtils.isEmpty(SearchViewCompat.getQuery(searchView))) {
                    SearchViewCompat.setQuery(searchView, null, true);
                    return true;
                }
                return false;
            }

        });
        MenuItemCompat.setActionView(search, searchView);
    }
}

From source file:it.gulch.linuxday.android.activities.SearchResultActivity.java

@SuppressLint("NewApi")
@Override//from w  ww.  j a  v a2  s.  com
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.search, menu);

    MenuItem searchMenuItem = menu.findItem(R.id.search);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {
        // Associate searchable configuration with the SearchView
        SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
        searchView = (SearchView) MenuItemCompat.getActionView(searchMenuItem);
        searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
        searchView.setIconifiedByDefault(false); // Always show the search view
        setSearchViewQuery(currentQuery);
    } else {
        // Legacy search mode for Eclair
        MenuItemCompat.setActionView(searchMenuItem, null);
        getSupportActionBar().setSubtitle(currentQuery);
    }
    return true;
}

From source file:ru.appsm.inapphelp.fragments.SearchFragment.java

public void addSearchViewInMenuItem(Context context, MenuItem searchItem) {
    MenuItemCompat.setShowAsAction(searchItem,
            MenuItemCompat.SHOW_AS_ACTION_ALWAYS | MenuItemCompat.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);

    searchView = new SearchView(context);
    MenuItemCompat.setActionView(searchItem, searchView);
    searchView.setSubmitButtonEnabled(false);

    searchView.setOnSearchClickListener(new OnClickListener() {

        @Override/*from  w  ww.  ja  v  a 2 s . c o  m*/
        public void onClick(View v) {
            searchStarted();
        }
    });

    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {

        @Override
        public boolean onQueryTextSubmit(String q) {

            doSearchForQuery(q);

            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            doSearchForQuery(newText);
            return true;
        }
    });

    MenuItemCompat.setOnActionExpandListener(searchItem, new OnActionExpandListener() {

        @Override
        public boolean onMenuItemActionExpand(MenuItem item) {
            setVisibility(true);
            return true;
        }

        @Override
        public boolean onMenuItemActionCollapse(MenuItem item) {
            setVisibility(false);
            return true;
        }
    });

    if (Build.VERSION.SDK_INT >= 14) {
        //searchView.setQueryHint(getString(R.string.iah_search_hint)); // Works on android 4.0 and above, but crashes in below version.
        //TODO commented becouse not work.(crash on 4.04). Work around.
    }

}

From source file:com.tenmiles.helpstack.fragments.SearchFragment.java

public void addSearchViewInMenuItem(Context context, MenuItem searchItem) {
    MenuItemCompat.setShowAsAction(searchItem,
            MenuItemCompat.SHOW_AS_ACTION_ALWAYS | MenuItemCompat.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);

    searchView = new SearchView(context);
    MenuItemCompat.setActionView(searchItem, searchView);
    searchView.setSubmitButtonEnabled(false);

    searchView.setOnSearchClickListener(new OnClickListener() {

        @Override//from   w ww.ja va 2s.  c  o m
        public void onClick(View v) {
            searchStarted();
        }
    });

    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {

        @Override
        public boolean onQueryTextSubmit(String q) {

            doSearchForQuery(q);

            return true;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            doSearchForQuery(newText);
            return true;
        }
    });

    MenuItemCompat.setOnActionExpandListener(searchItem, new OnActionExpandListener() {

        @Override
        public boolean onMenuItemActionExpand(MenuItem item) {
            setVisibility(true);
            return true;
        }

        @Override
        public boolean onMenuItemActionCollapse(MenuItem item) {
            setVisibility(false);
            return true;
        }
    });

    if (Build.VERSION.SDK_INT >= 14) {
        searchView.setQueryHint(getString(R.string.hs_search_hint)); // Works on android 4.0 and above, but crashes in below version.
    }

}