【项目分享】【Android】【入门级】长按小Demo
前言
【项目资源】longPressDemo
项目功能介绍
-
长按显示菜单
【效果图】
-
出发条目后,显示提示信息
【效果图】
项目技术支持
【开发环境】
- Android Studio
- window11
【开发语言】
- 后端:
- Java
- 前端
- xml
项目难点
如何设置出长按效果?
- 通过按钮控件绑定
setOnCreateContextMenuListener()
长按列表弹出菜单
如何添加长按后显示菜单条目?
-
通过创建添加条目方法
onCreateContextMenu
方法创建触发菜单public void onCreateContextMenu(ContextMenu menu, View v,ContextMenu.ContextMenuInfo menuInfo){}
ContextMenu menu
:菜单对象View v
:视图对象ContextMenu.ContextMenuInfo menuInfo
:菜单信息对象 -
通过
add()
方法添加菜单条目【格式】menu.add()方法格式
menu.add(groupId,itemId,orderId,"itemContext");
groupId
:组概念- 可以将几个菜单项归为一组,以便更好的以组的方式管理你的菜单按钮。
groupId
并不影响排列顺序。
itemId
:项目编号- 一个
itemId
对应一个menu中的选项。 - 在后面使用菜单的时候,就靠这个
itemId
来判断你使用的是哪个选项
orderId
:菜单项的显示顺序- 默认是0,表示菜单的显示顺序就是按照add的显示顺序来显示
- 如果两个位置数值一样,那么先定义的排前面。
如何判断触发哪一个条目?
-
通过获取Id使用
switch
语句来设置触发效果-
获取ID
-
获取
groupId
方法item.getGroupId();
-
获取
itemId
方法item.getItemId()
-
-
通过Toast(提示效果)来证明触发到菜单条目
Toast.makeText(getApplicationContext(),"提示的内容",Toast.LENGTH_LONG).show();
第一个参数
:上下文对象-
这里用到
getApplicationContext()
获取全局的一个Context变量,这个变量只要app在运行就会有
第二个参数
:显示的内容第三个参数
:显示的时间- 只有
LONG
(时间较长)和SHORT
(时间较短)两种会生效 - 即时你定义了其他的值,最后调用的还是这两个
-
-
结语
【感谢】
- 感谢各位读者能看到最后!!!