
PopupMenu的简要使用
在res目录下新建menu文件夹。 自定义XML布局(此处简化为供测试),以下是例子:
发布日期:2021-05-27 02:41:33
浏览次数:31
分类:精选文章
本文共 1070 字,大约阅读时间需要 3 分钟。
#PopupMenu的创建,使用及常见用法
一:功能概述
PopupMenu是一个在指定View下方显示可变位置弹出菜单的便捷组件。例如,在浏览器长按屏幕时即可看到类似的菜单功能。
二:创建基本流程
1:创建菜单布局
2:创建Java代码
private void showPopupMenu(View v) { popupMenu = new PopupMenu(MainActivity.this, v); MenuInflater inflater = popupMenu.getMenuInflater(); inflater.inflate(R.menu.long_menu, popupMenu.getMenu()); popupMenu.setOnMenuItemClickListener(this); popupMenu.show();}
- Line 1: 定义方法并传入依附View对象。
- Line 2: 创建PopupMenu实例。
- Line 3: 获取菜单布局并加载。
- Line 4: 设置菜单条目点击监听。
- Line 5: 显示PopupMenu。
3:菜单显示与隐藏
- 显示:调用popupMenu.show();
- 隐藏:调用popupMenu.dismiss();
4:子项动作监听
@Overridepublic boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case sub_item_1: // 此处填入具体id break; case sub_item_2: break; // ... default: return super.onOptionsItemSelected(item); } return true;}
三:基本属性
PopupMenu支持设置onDismissListener来监听菜单消失事件。
创建流程中的关键步骤如上所示,为开发人员提供了方便的操作方式。通过合理设计菜单布局和处理各子项点击事件,您可以实现任意功能需求。
发表评论
最新留言
表示我来过!
[***.240.166.169]2025年05月07日 22时26分27秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Kubernetes实战(三十三)-外部Etcd集群部署与调优(更安全的数据存储策略)
2023-01-29
Kubernetes实战(三十)-HTTP 7层路由机制(Ingress)
2023-01-29
Kubernetes实战(三)-定向调度(NodeSelector)
2023-01-29
Kubernetes实战(九)-初始化容器(Init Container)
2023-01-29
Kubernetes实战(二十七)-集群访问外部服务(Endpoints)
2023-01-29
Kubernetes实战(二十九)-集群资源管理(CPU & Memory)
2023-01-29
Kubernetes实战(二十二)-Etcd 集群部署(安全)
2023-01-29
Kubernetes实战(二十八)-环境共享与隔离(Namespace)
2023-01-29
Kubernetes实战(二十六)-高可用负载均衡与外部服务(Service)
2023-01-29
Kubernetes实战(八)-定时任务(Cronjob)
2023-01-29
Kubernetes实战(十一)-包管理工具(Helm)
2023-01-29
Kubernetes实战(十七)-动态存储供应(StorageClass)
2023-01-29
Kubernetes实战(十三)-标签选择器(Label)
2023-01-29
Kubernetes实战(十二)-集群资源监控工具(metrics-server)
2023-01-29