码迷,mamicode.com
首页 > 其他好文 > 详细

PopupMenu-使用实例跟监听事件

时间:2015-07-28 12:21:30      阅读:399      评论:0      收藏:0      [点我收藏+]

标签:

今天需要给一个控件添加弹出菜单功能。就顺便学习了下popupMenu的使用,记录下来。

它的使用其实也非常的简单,看如下代码

popupMenu = new PopupMenu(MainActivity.this, eText);
                popupMenu.getMenuInflater().inflate(R.menu.main,popupMenu.getMenu());
                Menu menu = popupMenu.getMenu();
                menu.findItem(R.id.search).setVisible(false);
                popupMenu.setOnMenuItemClickListener(new OnMenuItemClickListener() {
                    
                    @Override
                    public boolean onMenuItemClick(MenuItem arg0) {
                        // TODO Auto-generated method stub
                        bt3.setText("onMenuItemClick");
                        return false;
                    }
                });
                popupMenu.setOnDismissListener(new OnDismissListener() {
                    
                    @Override
                    public void onDismiss(PopupMenu arg0) {
                        // TODO Auto-generated method stub
                        eText.setText("ondismiss");
                    }
                });
                
                popupMenu.show();

具体步骤

1.创建一个 PopupMenu 实例

//第二个参数绑定的是控件,也就是列表从这个控件的位置弹出
popupMenu = new PopupMenu(MainActivity.this, eText);

 

2.给这个菜单添加menu列表

//这个是绑定列表,也就是弹出的菜单列表
popupMenu.getMenuInflater().inflate(R.menu.main,popupMenu.getMenu());

3.添加列表监听事件

popupMenu.setOnMenuItemClickListener

4.添加popupmenu消失事件监听

//当菜单消失的时候,这个方法会触发
popupMenu.setOnDismissListener

5.显示列表,这个一定要有,否则不会显示菜单

popupMenu.show();
//隐藏的话
popupMenu.dissmiss();

如果你想操作添加的menu里的item,你可以使用

Menu menu = popupMenu.getMenu();
menu.findItem(R.id.search).setVisible(false);

来得到每一个item来进行操作

PopupMenu-使用实例跟监听事件

标签:

原文地址:http://www.cnblogs.com/zhangshuli-1989/p/zhangshuli_popupmenu_15728113.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!