Android Menu

系统里面有 3 种类型的菜单: Contex Menus ,情境菜单:不支持菜单快捷键和图标。 Options Menus ,选项菜单:支持图标,但不支持菜单项选中标记。 Sub menus ,子菜单,不支持图标,不能再有子菜单。

options menu: Menu 键就会显示,用于当前的 Activity

       它包括两种菜单项 :1. 因为 options menu 在屏幕底部最多只能显示 6 个菜单项,这些菜单项称为 icon menu icon menu 只支持文字以及 icon ,可以设置快捷键,不支持 checkbox 以及 radio 控件,所以不能设置 checkable 选项

        2. 而多于 6 的菜单项会以 ”more” icon menu 来调出,称为 expanded menu 。它不支持 icon ,其他的特性都和 icon menu 一样!

       Activity 里面,一般通过以下函数来使用 options menu:

       Activity:onCreateOptionsMenu(Menu menu) ::创建 options menu ,这个函数只会在 menu 第一次显示的时候调用。

       Activity:onPrepareOptionsMenu(Menu menu) ::更新改变 options menu 的内容,这个函数会在 menu 每次显示时候调用。

       Activity::onOptionsItemSelected(MenuItem item) ::处理选中的菜单项。

 

Context menu: 要在相应的 view 上按几秒钟后才显示,用于 view ,跟某个具体的 view 绑定在一起。这类型的菜单不支持 icon 和快捷键!

Activity 里面,一般通过以下函数来使用 context menu

    Activity::registerForContextMenu(View view) 为某个 view 注册 context menu ,一般在 Activity::onCreate 里面调用。

    Activity::onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) 创建 context menu ,和 options menu 不同, context meun 每次显示时都会调用这个函数。

Activity::onContextItemSelected(MenuItem item) 处理选中的菜单项。

 

sub menu: 以上两种 menu 都可以加入子菜单,但子菜单不能嵌套子菜单,这意味着在 Android 系统,菜单只有两层,设计时需要注意的!同时子菜单不支持 icon

 

 

 

要是让所有的Activity都添加Menu,可以让OtherActivity extends  MenuActivity


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值