本文介绍了删除弹出菜单项编程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在夸大我的应用程序一个弹出菜单。我创建了一个XML popmenu像下面。
Song_popup XML
<?XML版本=1.0编码=UTF-8&GT?;<菜单的xmlns:机器人=http://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(菜单项菜单项){ 如果(menuItem.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; } });
更多推荐
删除弹出菜单项编程
发布评论