Loading

【项目分享】【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(时间较短)两种会生效
      • 即时你定义了其他的值,最后调用的还是这两个

结语

【感谢】

  • 感谢各位读者能看到最后!!!
posted @ 2022-05-25 23:27  lao-jiawei  阅读(145)  评论(0编辑  收藏  举报