android控件之Menu

本文深入探讨了Android应用中如何配置和实现菜单与上下文菜单,包括XML文件中菜单项的详细属性设置,以及如何在代码中调用和展示这些菜单。同时,介绍了如何通过重写特定方法来定制上下文菜单的行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. PopupMenu
    1. new PopupMenu(context,View)
    2. MeunInflater().inflate(R,Menuxml)
    3. popupmeun.show()
  2. XML中定义menu
       一下是menu的全部xml属性
  3. <?xml version="1.0" encoding="utf-8"?>
    <menu xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:id="@[+][package:]id/resource_name"
              android:title="string"
              android:titleCondensed="string"
              android:icon="@[package:]drawable/drawable_resource_name"
              android:onClick="method name"
              android:showAsAction=["ifRoom" | "never" | "withText" | "always" | "collapseActionView"]
              android:actionLayout="@[package:]layout/layout_resource_name"
              android:actionViewClass="class name"
              android:actionProviderClass="class name"
              android:alphabeticShortcut="string"
              android:numericShortcut="string"
              android:checkable=["true" | "false"]
              android:visible=["true" | "false"]
              android:enabled=["true" | "false"]
              android:menuCategory=["container" | "system" | "secondary" | "alternative"]
              android:orderInCategory="integer" />
        <group android:id="@[+][package:]id/resource name"
               android:checkableBehavior=["none" | "all" | "single"]
               android:visible=["true" | "false"]
               android:enabled=["true" | "false"]
               android:menuCategory=["container" | "system" | "secondary" | "alternative"]
               android:orderInCategory="integer" >
            <item />
        </group>
        <item >
            <menu>
              <item />
            </menu>
        </item>
    </menu>
    1. android:titleCondensed="string"
      标题太长显示不全是显示这个

    2. android:actionLayout
      ="@[package:]layout/layout_resource_name"
      android:actionViewClass="class name"
      android:actionProviderClass="class name"
      这三个创建ActionBar时使用
    3. android:menuCategory
      Keyword. Value corresponding to  Menu  CATEGORY_* constants, which define the item's priority. Valid values:
      Value Description
      container For items that are part of a container.
      system For items that are provided by the system.
      secondary For items that are user-supplied secondary (infrequently used) options.
      alternative For items that are alternative actions on the data that is currently displayed.
    4. android:orderInCategory="integer"
      重要度
  4. 上下文菜单,绑定上下文菜单的view长摁会触发动作
    1. 重写Activity的OnCreateContextMenu
    2. 调用Activity的registerForContextMenu(View view)方法为view注册 上下文
    3. onContextItemSelected绑定事件监听器
  5. 选项菜单
    1. 重写Activity的OnCreateOptionMenu
    2. onOptionItemSelected绑定事件监听器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值