删除弹出菜单项编程

编程入门 行业动态 更新时间:2024-10-27 21:12:15
本文介绍了删除弹出菜单项编程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我在夸大我的应用程序一个弹出菜单。我创建了一个XML popmenu像下面。

Song_popup XML

<?XML版本=1.0编码=UTF-8&GT?;<菜单的xmlns:机器人=htt​​p://schemas.android/apk/res/android    风格=@风格/ ToolBarStyle>    <项目        机器人:ID =@ + ID / add_queue        机器人:标题=添加到队列/>    <项目        机器人:ID =@ + ID / play_next        机器人:标题=加入收藏/>    <项目        机器人:ID =@ + ID / add_download        机器人:title =下载/>&所述; /菜单>

现在我想通过检查的条件删除项目。我怎样才能做到这一点?

code

PopupMenu的弹出=新的PopupMenu(活动,V);MenuInflater吹气= popup.getMenuInflater();inflater.inflate(R.menu.song_popup,popup.getMenu());popup.show();

解决方案

您可以删除菜单项,如下:

菜单M = popup.getMenu();m.removeItem(m.findItem(R.id.add_queue)); //删除添加到队列

的实施条件是完全取决于你。

,这是你如何处理菜单项点击:

popup.setOnMenuItemClickListener(新PopupMenu.OnMenuItemClickListener(){    @覆盖    公共布尔onMenuItemClick(菜单项菜单项){        如果(menu​​Item.getItemId()== R.id.play_next){            Toast.makeText(YourActivity.thisPlay_next,Toast.LENGTH_SHORT).show();            返回true;        }        返回false;    }});

I'm inflating a popup menu in my application. I've created a popmenu xml like below.

Song_popup xml

<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="schemas.android/apk/res/android" style="@style/ToolBarStyle"> <item android:id="@+id/add_queue" android:title="Add to queue" /> <item android:id="@+id/play_next" android:title="Add to favourite" /> <item android:id="@+id/add_download" android:title="Download" /> </menu>

Now i want to remove a item by checking a condition. How can i do this?

Code

PopupMenu popup = new PopupMenu(activity, v); MenuInflater inflater = popup.getMenuInflater(); inflater.inflate(R.menu.song_popup, popup.getMenu()); popup.show();

解决方案

You can remove a menu item as below:

Menu m = popup.getMenu(); m.removeItem(m.findItem(R.id.add_queue)); //removes "Add to queue"

Implementation of condition is totally up to you.

and this is how you can handle menu item clicks:

popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem menuItem) { if(menuItem.getItemId() == R.id.play_next){ Toast.makeText(YourActivity.this, "Play_next", Toast.LENGTH_SHORT).show(); return true; } return false; } });

更多推荐

删除弹出菜单项编程

本文发布于:2023-08-06 03:35:25,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1309788.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:弹出   菜单项

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!