类androidx.appcompat.widget.PopupMenu源码实例Demo

下面列出了怎么用androidx.appcompat.widget.PopupMenu的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: tv-samples   文件: VideoCardPresenter.java
CardViewHolder(ImageCardView view, Context context) {
    super(view);
    mContext = context;
    Context wrapper = new ContextThemeWrapper(mContext, R.style.MyPopupMenu);
    mPopupMenu = new PopupMenu(wrapper, view);
    mPopupMenu.inflate(R.menu.popup_menu);

    mPopupMenu.setOnMenuItemClickListener(this);
    view.setOnLongClickListener(this);

    mOwner = (LifecycleOwner) mContext;

    mDefaultBackground = mContext.getResources().getDrawable(R.drawable.no_cache_no_internet, null);
    mDefaultPlaceHolder = new RequestOptions().
            placeholder(mDefaultBackground);

    mCardView = (ImageCardView) CardViewHolder.this.view;
    Resources resources = mCardView.getContext().getResources();
    mCardView.setMainImageDimensions(Math.round(
            resources.getDimensionPixelSize(R.dimen.card_width)),
            resources.getDimensionPixelSize(R.dimen.card_height));

    mFragmentActivity = (FragmentActivity) context;
    mViewModel = ViewModelProviders.of(mFragmentActivity).get(VideosViewModel.class);
}
 
源代码2 项目: Bop   文件: PlaylistRecyclerViewAdapter.java
private void openPopUPMenu(ViewHolder holder, View view, String playlist) {

        PopupMenu popup = new PopupMenu(view.getContext(), holder.more);
        popup.inflate(R.menu.playlist_options);
        popup.setOnMenuItemClickListener(item -> {
            switch (item.getItemId()) {
                case R.id.one:
                    deletePlaylist(holder, view, playlist);
                    return true;
                case R.id.two:
                    editName(holder, view, playlist);
                    return true;
                case R.id.three:
                    showPlaylist(holder, view, playlist);
                    return true;
                default:
                    return false;
            }
        });
        popup.show();
    }
 
public void show(Context context, View anchor) {
    PopupMenu menu = new PopupMenu(context, anchor);
    menu.setOnMenuItemClickListener(item -> {
        if (item.getOrder() == 0) {
            listener.onCategoryOptionClick(null);
        } else {
            listener.onCategoryOptionClick(options.get(item.getOrder() - 1));
        }
        return false;
    });
    menu.getMenu().add(Menu.NONE, Menu.NONE, 0, category != null ? category.displayName() : categoryName);
    for (CategoryOption option : options) {
        if(date == null || ((option.startDate() == null || date.after(option.startDate())) && (option.endDate() == null || date.before(option.endDate()))))
            menu.getMenu().add(Menu.NONE, Menu.NONE, options.indexOf(option) + 1, option.displayName());
    }
    menu.show();
}
 
源代码4 项目: NewFastFrame   文件: RecentFragment.java
public void showPopMenu(View view, int position) {
    PopupMenu popupMenu = new PopupMenu(getContext(), view);
    popupMenu.getMenuInflater().inflate(R.menu.item_menu, popupMenu.getMenu());
    popupMenu.setOnMenuItemClickListener(item -> {
        if (item.getItemId() == R.id.menu_recent_delete) {
            RecentMessageEntity msg = mAdapter.getData(position);
            UserDBManager.getInstance().deleteRecentMessage(msg.getId());
            mAdapter.removeData(msg);
        } else {
            ToastUtils.showShortToast("置顶");
        }
        return true;
    });
    popupMenu.setGravity(Gravity.END);
    popupMenu.show();
}
 
源代码5 项目: simple-stack   文件: TasksFragment.java
private void showFilteringPopUpMenu() {
    PopupMenu popup = new PopupMenu(getContext(), getActivity().findViewById(R.id.menu_filter));
    popup.getMenuInflater().inflate(R.menu.filter_tasks, popup.getMenu());

    popup.setOnMenuItemClickListener(item -> {
        switch(item.getItemId()) {
            case R.id.active:
                tasksViewModel.setFiltering(TasksFilterType.ACTIVE_TASKS);
                break;
            case R.id.completed:
                tasksViewModel.setFiltering(TasksFilterType.COMPLETED_TASKS);
                break;
            default:
                tasksViewModel.setFiltering(TasksFilterType.ALL_TASKS);
                break;
        }
        tasksViewModel.reloadTasks();
        return true;
    });

    popup.show();
}
 
源代码6 项目: HgLauncher   文件: ViewUtils.java
/**
 * Creates a PopupMenu containing available search provider.
 *
 * @param activity  Activity where the PopupMenu resides.
 * @param popupMenu The PopupMenu to populate and show.
 * @param query     Search query to launch when a provider is selected.
 */
public static void createSearchMenu(final AppCompatActivity activity, PopupMenu popupMenu, final String query) {

    for (Map.Entry<String, String> provider : PreferenceHelper.getProviderList().entrySet()) {
        popupMenu.getMenu().add(provider.getKey());
    }

    popupMenu.setOnMenuItemClickListener(
            new PopupMenu.OnMenuItemClickListener() {
                @Override public boolean onMenuItemClick(MenuItem menuItem) {
                    Utils.doWebSearch(activity,
                            PreferenceHelper.getProvider(menuItem.getTitle().toString()),
                            query);
                    return true;
                }
            });
    popupMenu.show();
}
 
源代码7 项目: intra42   文件: BasicActivity.java
private void openThemeBrightnessChoice(View view) {
    PopupMenu popupMenu = new PopupMenu(this, view, Gravity.END, 0, R.style.MyPopupMenu);
    popupMenu.inflate(R.menu.menu_change_theme_brightness);
    popupMenu.setOnMenuItemClickListener(item -> {
        AppSettings.Theme.EnumBrightness brightness = AppSettings.Theme.getBrightness(BasicActivity.this);
        switch (item.getItemId()) {
            case R.id.menu_theme_auth:
                brightness = AppSettings.Theme.EnumBrightness.SYSTEM;
                break;
            case R.id.menu_theme_dark:
                brightness = AppSettings.Theme.EnumBrightness.DARK;
                break;
            case R.id.menu_theme_light:
                brightness = AppSettings.Theme.EnumBrightness.LIGHT;
                break;
        }
        Analytics.setBrightness(brightness);
        AppSettings.Theme.setBrightness(BasicActivity.this, brightness);
        ThemeHelper.setTheme(app);
        recreate();
        return true;
    });
    popupMenu.show();
}
 
源代码8 项目: HgLauncher   文件: ViewUtils.java
/**
 * Creates a PopupMenu containing available search provider.
 *
 * @param activity  Activity where the PopupMenu resides.
 * @param popupMenu The PopupMenu to populate and show.
 * @param query     Search query to launch when a provider is selected.
 */
public static void createSearchMenu(final AppCompatActivity activity, PopupMenu popupMenu, final String query) {

    for (Map.Entry<String, String> provider : PreferenceHelper.getProviderList().entrySet()) {
        popupMenu.getMenu().add(provider.getKey());
    }

    popupMenu.setOnMenuItemClickListener(
            new PopupMenu.OnMenuItemClickListener() {
                @Override public boolean onMenuItemClick(MenuItem menuItem) {
                    Utils.doWebSearch(activity,
                            PreferenceHelper.getProvider(menuItem.getTitle().toString()),
                            query);
                    return true;
                }
            });
    popupMenu.show();
}
 
源代码9 项目: Kore   文件: TVShowProgressFragment.java
@Override
public void onClick(final View v) {
    final PlaylistType.Item playListItem = new PlaylistType.Item();
    playListItem.episodeid = (int)v.getTag();

    final PopupMenu popupMenu = new PopupMenu(getActivity(), v);
    popupMenu.getMenuInflater().inflate(R.menu.musiclist_item, popupMenu.getMenu());
    popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            switch (item.getItemId()) {
                case R.id.action_play:
                    MediaPlayerUtils.play(TVShowProgressFragment.this, playListItem);
                    return true;
                case R.id.action_queue:
                    MediaPlayerUtils.queue(TVShowProgressFragment.this, playListItem, PlaylistType.GetPlaylistsReturnType.VIDEO);
                    return true;
            }
            return false;
        }
    });
    popupMenu.show();
}
 
源代码10 项目: Pix-Art-Messenger   文件: ConversationFragment.java
private boolean showBlockSubmenu(View view) {
    final Jid jid = conversation.getJid();
    final boolean showReject = !conversation.isWithStranger() && conversation.getContact().getOption(Contact.Options.PENDING_SUBSCRIPTION_REQUEST);
    PopupMenu popupMenu = new PopupMenu(getActivity(), view);
    popupMenu.inflate(R.menu.block);
    popupMenu.getMenu().findItem(R.id.block_contact).setVisible(jid.getLocal() != null);
    popupMenu.getMenu().findItem(R.id.reject).setVisible(showReject);
    popupMenu.setOnMenuItemClickListener(menuItem -> {
        Blockable blockable;
        switch (menuItem.getItemId()) {
            case R.id.reject:
                activity.xmppConnectionService.stopPresenceUpdatesTo(conversation.getContact());
                updateSnackBar(conversation);
                return true;
            case R.id.block_domain:
                blockable = conversation.getAccount().getRoster().getContact(jid.getDomain());
                break;
            default:
                blockable = conversation;
        }
        BlockContactDialog.show(activity, blockable);
        return true;
    });
    popupMenu.show();
    return true;
}
 
源代码11 项目: Jockey   文件: QueueSongItemViewModel.java
private PopupMenu.OnMenuItemClickListener onMenuItemClick(View view) {
    return menuItem -> {
        switch (menuItem.getItemId()) {
            case R.id.menu_item_navigate_to_artist:
                navigateToArtist();
                return true;
            case R.id.menu_item_navigate_to_album:
                navigateToAlbum();
                return true;
            case R.id.menu_item_navigate_to_folder:
                getContext().startActivity(MusicBrowserActivity.newIntent(getContext(), getReference()));
                return true;
            case R.id.menu_item_add_to_playlist:
                addToPlaylist();
                return true;
            case R.id.menu_item_remove:
                removeFromQueue(view);
                return true;
        }
        return false;
    };
}
 
源代码12 项目: Jockey   文件: NowPlayingFragment.java
private void showRepeatMenu() {
    View anchor = mBinding.getRoot().findViewById(R.id.menu_now_playing_repeat);
    PopupMenu menu = new PopupMenu(getContext(), anchor, Gravity.END);
    menu.inflate(R.menu.activity_now_playing_repeat);

    menu.setOnMenuItemClickListener(item -> {
        switch (item.getItemId()) {
            case R.id.menu_item_repeat_all:
                changeRepeatMode(MusicPlayer.REPEAT_ALL, R.string.confirm_enable_repeat);
                return true;
            case R.id.menu_item_repeat_none:
                changeRepeatMode(MusicPlayer.REPEAT_NONE, R.string.confirm_disable_repeat);
                return true;
            case R.id.menu_item_repeat_one:
                changeRepeatMode(MusicPlayer.REPEAT_ONE, R.string.confirm_enable_repeat_one);
                return true;
            case R.id.menu_item_repeat_multi:
                showMultiRepeatDialog();
                return true;
            default:
                return false;
        }
    });

    menu.show();
}
 
源代码13 项目: Jockey   文件: PlaylistItemViewModel.java
private PopupMenu.OnMenuItemClickListener onMenuItemClick(View view) {
    return menuItem -> {
        switch (menuItem.getItemId()) {
            case R.id.menu_item_queue_item_next:
                queuePlaylistNext();
                return true;
            case R.id.menu_item_queue_item_last:
                queuePlaylistLast();
                return true;
            case R.id.menu_item_edit:
                editThisAsAutoPlaylist();
                return true;
            case R.id.menu_item_delete:
                if (mPlaylist instanceof AutoPlaylist) {
                    deleteAutoPlaylist(view);
                } else {
                    deletePlaylist(view);
                }
                return true;
        }
        return false;
    };
}
 
源代码14 项目: Jockey   文件: PlaylistFragment.java
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    if (item.getItemId() == R.id.menu_playlist_sort && getView() != null) {
        View anchor = getView().findViewById(R.id.menu_playlist_sort);
        PopupMenu sortMenu = new PopupMenu(getContext(), anchor, Gravity.END);

        if (mPlaylist instanceof AutoPlaylist) {
            sortMenu.inflate(R.menu.sort_options_auto_playlist);
            sortMenu.setOnMenuItemClickListener(this::onAutoPlaylistSortOptionSelected);
        } else {
            sortMenu.inflate(R.menu.sort_options);
            sortMenu.setOnMenuItemClickListener(this::onSortOptionSelected);
        }

        sortMenu.show();
        return true;
    }

    return super.onOptionsItemSelected(item);
}
 
源代码15 项目: MHViewer   文件: GalleryDetailScene.java
private void ensurePopMenu() {
    if (mPopupMenu != null) {
        return;
    }

    Context context = getContext2();
    AssertUtils.assertNotNull(context);
    PopupMenu popup = new PopupMenu(context, mOtherActions, Gravity.TOP);
    mPopupMenu = popup;
    popup.getMenuInflater().inflate(R.menu.scene_gallery_detail, popup.getMenu());

    View.generateViewId();
    popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            switch (item.getItemId()) {
                case R.id.action_open_in_other_app:
                    String url = getGalleryDetailUrl();
                    Activity activity = getActivity2();
                    if (null != url && null != activity) {
                        UrlOpener.openUrl(activity, url, false);
                    }
                    break;
                case R.id.action_refresh:
                    if (mState != STATE_REFRESH && mState != STATE_REFRESH_HEADER) {
                        adjustViewVisibility(STATE_REFRESH, true);
                        request();
                    }
                    break;
            }
            return true;
        }
    });
}
 
源代码16 项目: SmartFlasher   文件: DescriptionView.java
@Override
protected void refresh() {
    super.refresh();
    if (mImageView != null && mImage != null) {
        mImageView.setImageDrawable(mImage);
        mImageView.setVisibility(View.VISIBLE);
    }
    if (mTitleView != null) {
        if (mTitle != null) {
            mTitleView.setText(mTitle);
        } else {
            mTitleView.setVisibility(View.GONE);
        }
    }
    if (mSummaryView != null) {
        if (mSummary != null) {
            mSummaryView.setText(mSummary);
        } else {
            mSummaryView.setVisibility(View.GONE);
        }
    }
    if (mMenuIconView != null && mMenuIcon != null && mOnMenuListener != null) {
        mMenuIconView.setImageDrawable(mMenuIcon);
        mMenuIconView.setVisibility(View.VISIBLE);
        mPopupMenu = new PopupMenu(mMenuIconView.getContext(), mMenuIconView);
        mOnMenuListener.onMenuReady(this, mPopupMenu);
    }
    if (mRootView != null && getOnItemClickListener() != null && mTitleView != null
            && mSummaryView != null) {
        mTitleView.setTextIsSelectable(false);
        mSummaryView.setTextIsSelectable(false);
        mRootView.setOnClickListener(v -> {
            if (getOnItemClickListener() != null) {
                getOnItemClickListener().onClick(DescriptionView.this);
            }
        });
    }
}
 
源代码17 项目: SmartFlasher   文件: GenericSelectView.java
@Override
protected void refresh() {
    super.refresh();
    if (mMenuIconView != null && mMenuIcon != null && mOnMenuListener != null) {
        mMenuIconView.setImageDrawable(mMenuIcon);
        mMenuIconView.setVisibility(View.VISIBLE);
        mPopupMenu = new PopupMenu(mMenuIconView.getContext(), mMenuIconView);
        mOnMenuListener.onMenuReady(this, mPopupMenu);
    }
}
 
/**
 * date: 20/9/18
 * author: chenli
 * description: 锁仓平仓处理逻辑
 */
private void lockClosePosition(final View v) {
    PopupMenu popup = new PopupMenu(getActivity(), v);
    popup.getMenuInflater().inflate(R.menu.fragment_transaction, popup.getMenu());
    popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            switch (item.getItemId()) {
                case R.id.bid_position:
                    mDirection = DIRECTION_BUY_ZN;
                    mIsClosePriceShow = true;
                    mBinding.closeDirection.setText(ACTION_CLOSE_BUY);
                    mBinding.bidPrice1Direction.setText(ACTION_ADD_BUY);
                    mBinding.askPrice1Direction.setText(ACTION_LOCK);
                    refreshCloseBidPrice();
                    defaultClosePosition(v);
                    break;
                case R.id.ask_position:
                    mDirection = DIRECTION_SELL_ZN;
                    mIsClosePriceShow = true;
                    mBinding.closeDirection.setText(ACTION_CLOSE_SELL);
                    mBinding.bidPrice1Direction.setText(ACTION_LOCK);
                    mBinding.askPrice1Direction.setText(ACTION_ADD_SELL);
                    refreshCloseAskPrice();
                    defaultClosePosition(v);
                    break;
                default:
                    break;
            }
            return true;
        }
    });
    popup.show();
}
 
/**
 * date: 20/9/18
 * author: chenli
 * description: 先开先平平仓处理逻辑
 */
private void firstClosePosition(final View v) {
    if (mInstrumentIdTransaction != null && mInstrumentIdTransaction.contains("&")) {
        PopupMenu popupCombine = new PopupMenu(getActivity(), v);
        popupCombine.getMenuInflater().inflate(R.menu.fragment_transaction, popupCombine.getMenu());
        popupCombine.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                switch (item.getItemId()) {
                    case R.id.bid_position:
                        mDirection = DIRECTION_BUY_ZN;
                        mIsClosePriceShow = true;
                        mBinding.closeDirection.setText(ACTION_CLOSE_BUY);
                        refreshCloseBidPrice();
                        defaultClosePosition(v);
                        break;
                    case R.id.ask_position:
                        mDirection = DIRECTION_SELL_ZN;
                        mIsClosePriceShow = true;
                        mBinding.closeDirection.setText(ACTION_CLOSE_SELL);
                        refreshCloseAskPrice();
                        defaultClosePosition(v);
                        break;
                    default:
                        break;
                }
                return true;
            }
        });
        popupCombine.show();
    } else {
        ToastUtils.showToast(BaseApplication.getContext(), "您还没有此合约持仓~");
    }
}
 
源代码20 项目: Bop   文件: PlayingNowList.java
public void playlistOptions(View view) {
    PopupMenu popup = new PopupMenu(view.getContext(), view);
    popup.inflate(R.menu.current_playlist_options);
    popup.setOnMenuItemClickListener(item -> {
        switch (item.getItemId()) {
            case R.id.one:
                showPlaylistDialog();
            default:
                return false;
        }
    });
    popup.show();
}
 
源代码21 项目: CommonUtils   文件: CommonUtils.java
public static void showPopupOffset(@NonNull PopupMenu menu, int xoff, int yoff) {
    try {
        Field field = menu.getClass().getDeclaredField("mPopup");
        field.setAccessible(true);

        MenuPopupHelper helper = (MenuPopupHelper) field.get(menu);
        if (helper == null) throw new IllegalStateException();

        Method method;
        try {
            method = helper.getClass().getDeclaredMethod("show", int.class, int.class);
            method.setAccessible(true);
        } catch (NoSuchMethodException ex) {
            try {
                method = helper.getClass().getDeclaredMethod("tryShow", int.class, int.class);
                method.setAccessible(true);
            } catch (NoSuchMethodException exx) {
                menu.show();
                return;
            }
        }

        method.invoke(helper, xoff, yoff);
    } catch (NoSuchFieldException | IllegalAccessException | InvocationTargetException ignored) {
        menu.show();
    }
}
 
源代码22 项目: SAI   文件: BackupManageAppFragment.java
private void showMenu(View anchor) {
    PopupMenu popupMenu = new PopupMenu(requireContext(), anchor);
    popupMenu.getMenuInflater().inflate(R.menu.app_details, popupMenu.getMenu());

    popupMenu.setOnMenuItemClickListener((menuItem) -> {
        switch (menuItem.getItemId()) {
            case R.id.menu_backup_open_app_in_system_settings:
                openAppInSystemSettings();
                break;
        }
        return true;
    });

    popupMenu.show();
}
 
源代码23 项目: Deadline   文件: ReminderDialogFragment.java
private void setupPopupMenu() {
    final PopupMenu popupMenu = new PopupMenu(getActivity(), mBinding.remindIntervalUnit, Gravity.CENTER, 0, android.R.style.Widget_Material_Light_PopupMenu_Overflow);
    popupMenu.inflate(R.menu.menu_reminder_units);
    mBinding.remindIntervalUnit.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            popupMenu.show();
            mViewModel.updateSelections(RemindType.SINGLE_REMIND);
        }
    });
    popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            switch (item.getItemId()) {
                case R.id.action_remind_minutes:
                    mViewModel.singleRemindUnit.set(RemindType.SINGLE_MIN);
                    break;
                case R.id.action_remind_hours:
                    mViewModel.singleRemindUnit.set(RemindType.SINGLE_HOUR);
                    break;
                case R.id.action_remind_days:
                    mViewModel.singleRemindUnit.set(RemindType.SINGLE_DAY);
                    break;
                case R.id.action_remind_weeks:
                    mViewModel.singleRemindUnit.set(RemindType.SINGLE_WEEK);
                    break;
            }
            return true;
        }
    });
}
 
public void setPlaybackSpeedButtonOnClickListener(
        final PlaybackSpeedPopupMenuListener playbackSpeedPopupMenuListener
) {
    playbackSpeedButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            popupMenu.setOnSpeedSelectedListener(new OnPlaybackSpeedSelectedListener() {
                @Override
                public void onSpeedSelected(float speed, String text) {
                    playbackSpeedPopupMenuListener.onSpeedSelected(speed, text);
                }
            });

            popupMenu.setOnDismissListener(new PopupMenu.OnDismissListener() {
                @Override
                public void onDismiss(PopupMenu menu) {
                    playbackSpeedPopupMenuListener.onPopupMenuDismissed();
                }
            });

            // Show the PopupMenu
            popupMenu.show();

            playbackSpeedPopupMenuListener.onPopupMenuShown();
        }
    });
}
 
源代码25 项目: DKVideoPlayer   文件: TikTokListFragment.java
@Override
protected void initView() {
    super.initView();
    mRecyclerView = findViewById(R.id.rv_tiktok);
    mRecyclerView.setLayoutManager(new GridLayoutManager(getContext(), 2));
    mAdapter = new TikTokListAdapter(data);
    mRecyclerView.setAdapter(mAdapter);
    mSwitchImpl = findViewById(R.id.btn_switch_impl);
    PopupMenu menu = new PopupMenu(getContext(), mSwitchImpl);
    menu.inflate(R.menu.tiktok_impl_menu);
    menu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            mAdapter.setImpl(item.getItemId());
            switch (item.getItemId()) {
                case R.id.impl_recycler_view:
                    mSwitchImpl.setText("RecyclerView");
                    break;
                case R.id.impl_vertical_view_pager:
                    mSwitchImpl.setText("VerticalViewPager");
                    break;
                case R.id.impl_view_pager_2:
                    mSwitchImpl.setText("ViewPager2");
                    break;
            }
            return false;
        }
    });
    mSwitchImpl.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            menu.show();
        }
    });

    //默认VerticalViewPager
    mAdapter.setImpl(R.id.impl_vertical_view_pager);
    mSwitchImpl.setText("VerticalViewPager");
}
 
源代码26 项目: mongol-library   文件: MongolMenuActivity.java
public void onStandardMenuButtonClick(View view) {
    Button standardMenuButton = findViewById(R.id.standard_menu_button);
    PopupMenu popup = new PopupMenu(this, standardMenuButton);
    popup.getMenuInflater().inflate(R.menu.mongol_menu_activity, popup.getMenu());
    popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
        public boolean onMenuItemClick(MenuItem item) {
            Toast.makeText(MongolMenuActivity.this, item.getTitle(), Toast.LENGTH_SHORT).show();
            return true;
        }
    });
    popup.show();
}
 
源代码27 项目: ui   文件: MainActivity.java
private void showPopupMenu(View v){
    PopupMenu popupM = new PopupMenu(this, v); //note "this" is the activity context, if you are using this in a fragment.  using getActivity()
    popupM.inflate(R.menu.popup);
    popupM.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {

        @Override
        public boolean onMenuItemClick(MenuItem item) {
            Toast.makeText(getApplicationContext(), item.toString(), Toast.LENGTH_LONG).show();
            //textview.append("\n you clicked "+item.toString());
            return true;
        }
    });

    popupM.show();
}
 
源代码28 项目: SmartPack-Kernel-Manager   文件: CardView.java
@Override
protected void refresh() {
    super.refresh();
    if (mTitle != null) {
        if (mImageView != null && mImage != null) {
            mImageView.setImageDrawable(mImage);
            mImageView.setVisibility(View.VISIBLE);
        }
        if (mTitleText != null) {
            mTitle.setText(mTitleText);
            mTitleParent.setVisibility(View.VISIBLE);
            if (mLayoutParent != null) {
                LinearLayout.LayoutParams layoutParams =
                        (LinearLayout.LayoutParams) mLayout.getLayoutParams();
                layoutParams.topMargin = -mLayout.getPaddingLeft();
                mLayout.requestLayout();
                mLayout.setPadding(mLayout.getPaddingLeft(), 0,
                        mLayout.getPaddingRight(), mLayout.getPaddingBottom());
            }
        } else {
            mTitleParent.setVisibility(View.GONE);
        }
    }
    if (mMenuButton != null && mOnMenuListener != null) {
        mMenuButton.setVisibility(View.VISIBLE);
        mPopupMenu = new PopupMenu(mMenuButton.getContext(), mMenuButton);
        mOnMenuListener.onMenuReady(this, mPopupMenu);
    }
    if (mRootView != null && getOnItemClickListener() != null) {
        mRootView.setOnClickListener(view -> getOnItemClickListener().onClick(CardView.this));
    }
}
 
@Override
protected void refresh() {
    super.refresh();
    if (mMenuIconView != null && mMenuIcon != null && mOnMenuListener != null) {
        mMenuIconView.setImageDrawable(mMenuIcon);
        mMenuIconView.setVisibility(View.VISIBLE);
        mPopupMenu = new PopupMenu(mMenuIconView.getContext(), mMenuIconView);
        mOnMenuListener.onMenuReady(this, mPopupMenu);
    }
}
 
源代码30 项目: SmartPack-Kernel-Manager   文件: SwitchView.java
@Override
protected void refresh() {
    super.refresh();
    if (mMenuIconView != null && mMenuIcon != null && mOnMenuListener != null) {
        mMenuIconView.setImageDrawable(mMenuIcon);
        mMenuIconView.setVisibility(View.VISIBLE);
        mPopupMenu = new PopupMenu(mMenuIconView.getContext(), mMenuIconView);
        mOnMenuListener.onMenuReady(this, mPopupMenu);
    }
    if (mImageView != null) {
        if (mImage != null) {
            mImageView.setImageDrawable(mImage);
            mImageView.setVisibility(View.VISIBLE);
        } else {
            mImageView.setVisibility(View.GONE);
        }
    }
    if (mTitle != null) {
        if (mTitleText != null) {
            mTitle.setText(mTitleText);
            mTitle.setVisibility(View.VISIBLE);
        } else {
            mTitle.setVisibility(View.GONE);
        }
    }
    if (mSummary != null && mSummaryText != null) {
        mSummary.setText(mSummaryText);
    }
    if (mSwitcher != null) {
        mSwitcher.setChecked(mChecked);
    }
}