List of usage examples for android.view Window FEATURE_OPTIONS_PANEL
int FEATURE_OPTIONS_PANEL
To view the source code for android.view Window FEATURE_OPTIONS_PANEL.
Click Source Link
From source file:lewa.support.v7.internal.widget.ToolbarWidgetWrapper.java
public ToolbarWidgetWrapper(Toolbar toolbar, boolean style, int defaultNavigationContentDescription, int defaultNavigationIcon) { mToolbar = toolbar;//from w w w. j a v a 2 s . co m mTitle = toolbar.getTitle(); mSubtitle = toolbar.getSubtitle(); mTitleSet = mTitle != null; if (style) { final TintTypedArray a = TintTypedArray.obtainStyledAttributes(toolbar.getContext(), null, R.styleable.ActionBar, R.attr.actionBarStyle, 0); final CharSequence title = a.getText(R.styleable.ActionBar_title); if (!TextUtils.isEmpty(title)) { setTitle(title); } final CharSequence subtitle = a.getText(R.styleable.ActionBar_subtitle); if (!TextUtils.isEmpty(subtitle)) { setSubtitle(subtitle); } final Drawable logo = a.getDrawable(R.styleable.ActionBar_logo); if (logo != null) { setLogo(logo); } final Drawable icon = a.getDrawable(R.styleable.ActionBar_icon); if (icon != null) { setIcon(icon); } final Drawable navIcon = a.getDrawable(R.styleable.ActionBar_homeAsUpIndicator); if (navIcon != null) { setNavigationIcon(navIcon); } setDisplayOptions(a.getInt(R.styleable.ActionBar_displayOptions, 0)); final int customNavId = a.getResourceId(R.styleable.ActionBar_customNavigationLayout, 0); if (customNavId != 0) { setCustomView(LayoutInflater.from(mToolbar.getContext()).inflate(customNavId, mToolbar, false)); setDisplayOptions(mDisplayOpts | ActionBar.DISPLAY_SHOW_CUSTOM); } final int height = a.getLayoutDimension(R.styleable.ActionBar_height, 0); if (height > 0) { final ViewGroup.LayoutParams lp = mToolbar.getLayoutParams(); lp.height = height; mToolbar.setLayoutParams(lp); } final int contentInsetStart = a.getDimensionPixelOffset(R.styleable.ActionBar_contentInsetStart, -1); final int contentInsetEnd = a.getDimensionPixelOffset(R.styleable.ActionBar_contentInsetEnd, -1); if (contentInsetStart >= 0 || contentInsetEnd >= 0) { mToolbar.setContentInsetsRelative(Math.max(contentInsetStart, 0), Math.max(contentInsetEnd, 0)); } final int titleTextStyle = a.getResourceId(R.styleable.ActionBar_titleTextStyle, 0); if (titleTextStyle != 0) { mToolbar.setTitleTextAppearance(mToolbar.getContext(), titleTextStyle); } final int subtitleTextStyle = a.getResourceId(R.styleable.ActionBar_subtitleTextStyle, 0); if (subtitleTextStyle != 0) { mToolbar.setSubtitleTextAppearance(mToolbar.getContext(), subtitleTextStyle); } final int popupTheme = a.getResourceId(R.styleable.ActionBar_popupTheme, 0); if (popupTheme != 0) { mToolbar.setPopupTheme(popupTheme); } a.recycle(); // Keep the TintManager in case we need it later mTintManager = a.getTintManager(); } else { mDisplayOpts = detectDisplayOptions(); // Create a TintManager in case we need it later mTintManager = new TintManager(toolbar.getContext()); } setDefaultNavigationContentDescription(defaultNavigationContentDescription); mHomeDescription = mToolbar.getNavigationContentDescription(); setDefaultNavigationIcon(mTintManager.getDrawable(defaultNavigationIcon)); mToolbar.setNavigationOnClickListener(new View.OnClickListener() { final ActionMenuItem mNavItem = new ActionMenuItem(mToolbar.getContext(), 0, android.R.id.home, 0, 0, mTitle); @Override public void onClick(View v) { if (mWindowCallback != null && mMenuPrepared) { mWindowCallback.onMenuItemSelected(Window.FEATURE_OPTIONS_PANEL, mNavItem); } } }); }
From source file:com.chuhan.privatecalc.fragment.os.FragmentActivity.java
/** * Dispatch to Fragment.onCreateOptionsMenu(). *///from w w w .j a v a 2 s . c o m @Override public boolean onCreatePanelMenu(int featureId, Menu menu) { if (featureId == Window.FEATURE_OPTIONS_PANEL) { boolean show = super.onCreatePanelMenu(featureId, menu); show |= mFragments.dispatchCreateOptionsMenu(menu, getMenuInflater()); if (android.os.Build.VERSION.SDK_INT >= HONEYCOMB) { return show; } // Prior to Honeycomb, the framework can't invalidate the options // menu, so we must always say we have one in case the app later // invalidates it and needs to have it shown. return true; } return super.onCreatePanelMenu(featureId, menu); }
From source file:com.alirezaafkar.toolbar.ToolbarWidgetWrapper.java
public ToolbarWidgetWrapper(RtlToolbar toolbar, boolean style, int defaultNavigationContentDescription, int defaultNavigationIcon) { mToolbar = toolbar;/*from w ww .j a va 2 s .c o m*/ mTitle = toolbar.getTitle(); mSubtitle = toolbar.getSubtitle(); mTitleSet = mTitle != null; mNavIcon = toolbar.getNavigationIcon(); if (style) { final TintTypedArray a = TintTypedArray.obtainStyledAttributes(toolbar.getContext(), null, R.styleable.ActionBar, R.attr.actionBarStyle, 0); final CharSequence title = a.getText(R.styleable.ActionBar_title); if (!TextUtils.isEmpty(title)) { setTitle(title); } final CharSequence subtitle = a.getText(R.styleable.ActionBar_subtitle); if (!TextUtils.isEmpty(subtitle)) { setSubtitle(subtitle); } final Drawable logo = a.getDrawable(R.styleable.ActionBar_logo); if (logo != null) { setLogo(logo); } final Drawable icon = a.getDrawable(R.styleable.ActionBar_icon); if (mNavIcon == null && icon != null) { setIcon(icon); } final Drawable navIcon = a.getDrawable(R.styleable.ActionBar_homeAsUpIndicator); if (navIcon != null) { setNavigationIcon(navIcon); } setDisplayOptions(a.getInt(R.styleable.ActionBar_displayOptions, 0)); final int customNavId = a.getResourceId(R.styleable.ActionBar_customNavigationLayout, 0); if (customNavId != 0) { setCustomView(LayoutInflater.from(mToolbar.getContext()).inflate(customNavId, mToolbar, false)); setDisplayOptions(mDisplayOpts | ActionBar.DISPLAY_SHOW_CUSTOM); } final int height = a.getLayoutDimension(R.styleable.ActionBar_height, 0); if (height > 0) { final ViewGroup.LayoutParams lp = mToolbar.getLayoutParams(); lp.height = height; mToolbar.setLayoutParams(lp); } final int contentInsetStart = a.getDimensionPixelOffset(R.styleable.ActionBar_contentInsetStart, -1); final int contentInsetEnd = a.getDimensionPixelOffset(R.styleable.ActionBar_contentInsetEnd, -1); if (contentInsetStart >= 0 || contentInsetEnd >= 0) { mToolbar.setContentInsetsRelative(Math.max(contentInsetStart, 0), Math.max(contentInsetEnd, 0)); } final int titleTextStyle = a.getResourceId(R.styleable.ActionBar_titleTextStyle, 0); if (titleTextStyle != 0) { mToolbar.setTitleTextAppearance(mToolbar.getContext(), titleTextStyle); } final int subtitleTextStyle = a.getResourceId(R.styleable.ActionBar_subtitleTextStyle, 0); if (subtitleTextStyle != 0) { mToolbar.setSubtitleTextAppearance(mToolbar.getContext(), subtitleTextStyle); } final int popupTheme = a.getResourceId(R.styleable.ActionBar_popupTheme, 0); if (popupTheme != 0) { mToolbar.setPopupTheme(popupTheme); } a.recycle(); } else { mDisplayOpts = detectDisplayOptions(); } mDrawableManager = AppCompatDrawableManager.get(); setDefaultNavigationContentDescription(defaultNavigationContentDescription); mHomeDescription = mToolbar.getNavigationContentDescription(); setDefaultNavigationIcon(mDrawableManager.getDrawable(getContext(), defaultNavigationIcon)); mToolbar.setNavigationOnClickListener(new View.OnClickListener() { final ActionMenuItem mNavItem = new ActionMenuItem(mToolbar.getContext(), 0, android.R.id.home, 0, 0, mTitle); @Override public void onClick(View v) { if (mWindowCallback != null && mMenuPrepared) { mWindowCallback.onMenuItemSelected(Window.FEATURE_OPTIONS_PANEL, mNavItem); } } }); }
From source file:com.example.voicecast_gglasssample.VoiceCastMainActivity.java
@Override public boolean onCreatePanelMenu(int featureId, Menu menu) { featureIdSave = featureId;/*from w w w . java2 s . c om*/ if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS || featureId == Window.FEATURE_OPTIONS_PANEL) { getMenuInflater().inflate(R.menu.voice_cast_main, menu); return true; } // Pass through to super to setup touch menu. return super.onCreatePanelMenu(featureId, menu); }
From source file:android.support.car.app.CarFragmentActivity.java
/** * Dispatch to Fragment.onCreateOptionsMenu(). *///from w ww .ja va 2s . c om @Override public boolean onCreatePanelMenu(int featureId, Menu menu) { if (featureId == Window.FEATURE_OPTIONS_PANEL && getMenuInflater() != null) { boolean show = super.onCreatePanelMenu(featureId, menu); show |= mFragments.dispatchCreateOptionsMenu(menu, getMenuInflater()); if (android.os.Build.VERSION.SDK_INT >= HONEYCOMB) { return show; } // Prior to Honeycomb, the framework can't invalidate the options // menu, so we must always say we have one in case the app later // invalidates it and needs to have it shown. return true; } return super.onCreatePanelMenu(featureId, menu); }
From source file:com.example.voicecast_gglasssample.VoiceCastMainActivity.java
@Override public boolean onMenuItemSelected(int featureId, MenuItem item) { if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS || featureId == Window.FEATURE_OPTIONS_PANEL) { switch (item.getItemId()) { case R.id.record_menu_item: // Start recording startVoiceRecognitionActivity(); break; case R.id.media_route_menu_item: showDeviceCards();//from w w w . j a v a 2 s. c om break; default: return true; } return true; } // Good practice to pass through to super if not handled return super.onMenuItemSelected(featureId, item); }
From source file:android.support.v7.app.ActionBarActivityDelegateBase.java
@Override public View onCreatePanelView(int featureId) { View createdPanelView = null; if (featureId == Window.FEATURE_OPTIONS_PANEL) { boolean show = true; MenuBuilder menu = mMenu;//from w w w . ja v a 2 s. c o m if (mActionMode == null) { // We only want to dispatch Activity/Fragment menu calls if there isn't // currently an action mode if (menu == null) { // We don't have a menu created, so create one menu = createMenu(); setMenu(menu); // Make sure we're not dispatching item changes to presenters menu.stopDispatchingItemsChanged(); // Dispatch onCreateSupportOptionsMenu show = mActivity.superOnCreatePanelMenu(Window.FEATURE_OPTIONS_PANEL, menu); } if (show) { // Make sure we're not dispatching item changes to presenters menu.stopDispatchingItemsChanged(); // Dispatch onPrepareSupportOptionsMenu show = mActivity.superOnPreparePanel(Window.FEATURE_OPTIONS_PANEL, null, menu); } } if (show) { createdPanelView = (View) getListMenuView(mActivity, this); // Allow menu to start dispatching changes to presenters menu.startDispatchingItemsChanged(); } else { // If the menu isn't being shown, we no longer need it setMenu(null); } } return createdPanelView; }
From source file:com.egoclean.testpregnancy.util.ActivityHelper.java
/** * Adds an action button to the compatibility action bar, using menu information from a * {@link android.view.MenuItem}. If the menu item ID is <code>menu_refresh</code>, the menu item's state * can be changed to show a loading spinner using * {@link ActivityHelper#setRefreshActionButtonCompatState(boolean)}. *//*from w ww . j av a2 s .c o m*/ private View addActionButtonCompatFromMenuItem(final MenuItem item) { final ViewGroup actionBar = getActionBarCompat(); if (actionBar == null) { return null; } // Create the separator ImageView separator = new ImageView(mActivity, null, R.attr.actionbarCompatSeparatorStyle); separator.setLayoutParams(new ViewGroup.LayoutParams(2, ViewGroup.LayoutParams.FILL_PARENT)); // Create the button ImageButton actionButton = new ImageButton(mActivity, null, R.attr.actionbarCompatButtonStyle); actionButton.setId(item.getItemId()); actionButton.setLayoutParams(new ViewGroup.LayoutParams( (int) mActivity.getResources().getDimension(R.dimen.actionbar_compat_height), ViewGroup.LayoutParams.FILL_PARENT)); actionButton.setImageDrawable(item.getIcon()); actionButton.setScaleType(ImageView.ScaleType.CENTER); actionButton.setContentDescription(item.getTitle()); actionButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { mActivity.onMenuItemSelected(Window.FEATURE_OPTIONS_PANEL, item); } }); actionBar.addView(separator); actionBar.addView(actionButton); if (item.getItemId() == R.id.menu_refresh) { // Refresh buttons should be stateful, and allow for indeterminate progress indicators, // so add those. int buttonWidth = mActivity.getResources().getDimensionPixelSize(R.dimen.actionbar_compat_height); int buttonWidthDiv3 = buttonWidth / 3; ProgressBar indicator = new ProgressBar(mActivity, null, R.attr.actionbarCompatProgressIndicatorStyle); LinearLayout.LayoutParams indicatorLayoutParams = new LinearLayout.LayoutParams(buttonWidthDiv3, buttonWidthDiv3); indicatorLayoutParams.setMargins(buttonWidthDiv3, buttonWidthDiv3, buttonWidth - 2 * buttonWidthDiv3, 0); indicator.setLayoutParams(indicatorLayoutParams); indicator.setVisibility(View.GONE); indicator.setId(R.id.menu_refresh_progress); actionBar.addView(indicator); } return actionButton; }
From source file:android.support.v7.app.ActionBarActivityDelegateBase.java
@Override public boolean onCreatePanelMenu(int featureId, Menu menu) { if (featureId != Window.FEATURE_OPTIONS_PANEL) { return mActivity.superOnCreatePanelMenu(featureId, menu); }/*w ww . j ava 2s.com*/ return false; }
From source file:android.support.v7.app.ActionBarActivityDelegateBase.java
@Override public boolean onPreparePanel(int featureId, View view, Menu menu) { if (featureId != Window.FEATURE_OPTIONS_PANEL) { return mActivity.superOnPreparePanel(featureId, view, menu); }//from ww w .j ava 2s .co m return false; }