zoukankan      html  css  js  c++  java
  • PopupMenu-使用实例跟监听事件

    今天需要给一个控件添加弹出菜单功能。就顺便学习了下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来进行操作

  • 相关阅读:
    kvm克隆虚拟机
    vSAN添加license
    KVM虚拟机快照
    第二次作业及总结——数据类型和运算符
    第二次作业心得
    做完c语言作业的心得
    介绍自己
    awk数组 Jazz
    Java入门第一阶段总结
    区间dp入门+例题
  • 原文地址:https://www.cnblogs.com/zhangshuli-1989/p/zhangshuli_popupmenu_15728113.html
Copyright © 2011-2022 走看看