添加Action 按钮
来源:互联网 发布:医疗器械国家数据库 编辑:程序博客网 时间:2024/06/07 12:32
编写:Vincent 4J - 原文:http://developer.android.com/training/basics/actionbar/adding-buttons.html
Action bar 允许我们为当前环境下最重要的操作添加按钮。那些直接出现在 action bar 中的 icon 和/或文本被称作action buttons(操作按钮)。安排不下的或不足够重要的操作被隐藏在action overflow (超出空间的action,译者注)中。
图 1. 一个有search操作按钮和 action overflow 的 action bar,在 action overflow 里能展现额外的操作。
所有的操作按钮和 action overflow 中其他可用的条目都被定义在 menu资源 的 XML 文件中。通过在项目的 res/menu
目录中新增一个 XML 文件来为 action bar 添加操作。
为想要添加到 action bar 中的每个条目添加一个 <item>
元素。例如:
res/menu/main_activity_actions.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" > <!-- 搜索, 应该作为动作按钮展示--> <item android:id="@+id/action_search" android:icon="@drawable/ic_action_search" android:title="@string/action_search" android:showAsAction="ifRoom" /> <!-- 设置, 在溢出菜单中展示 --> <item android:id="@+id/action_settings" android:title="@string/action_settings" android:showAsAction="never" /></menu>
上述代码中android:showAsAction现在不能用
改为app:showAsAction
showAsAction的属性
1,always:这个值会使菜单项一直显示在Action Bar上。
2、ifRoom:如果有足够的空间,这个值会使菜单项显示在Action Bar上。
3、never:这个值使菜单项永远都不出现在Action Bar上。
4、withText:这个值使菜单项和它的图标,菜单文本一起显示。
上述代码声明,当 action bar 有可用空间时,搜索操作将作为一个操作按钮来显示,但设置操作将一直只在 action overflow 中显示。(默认情况下,所有的操作都显示在 action overflow 中,但为每一个操作指明设计意图是很好的做法。)
为 Action Bar 添加操作
要为 action bar 布局菜单条目,就要在 activity 中实现 onCreateOptionsMenu() 回调方法来 inflate
菜单资源从而获取 Menu 对象。例如:
@Overridepublic boolean onCreateOptionsMenu(Menu menu) { // 为ActionBar扩展菜单项 MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main_activity_actions, menu); return super.onCreateOptionsMenu(menu);}
为操作按钮添加响应事件
当用户按下某一个操作按钮或者 action overflow 中的其他条目,系统将调用 activity 中onOptionsItemSelected()的回调方法。在该方法的实现里面调用MenuItem的getItemId()来判断哪个条目被按下 - 返回的 ID 会匹配我们声明对应的 <item>
元素中 android:id
属性的值。
@Overridepublic boolean onOptionsItemSelected(MenuItem item) { // 处理动作按钮的点击事件 switch (item.getItemId()) { case R.id.action_search: //这里可以写自定义的方法 return true; case R.id.action_settings: openSettings(); return true; default: return super.onOptionsItemSelected(item); }}
- 2.2 添加action按钮
- ActionBar -- 添加Action按钮
- 添加Action 按钮
- 在Action Bar上添加操作按钮
- Android开发UI之添加Action按钮
- 自定义Android Action Bar,标题和按钮可以动态添加
- Android官方入门文档[6]添加Action按钮
- nc 自定义Action 添加拓展按钮的方法
- Android UI ActionBar功能-在 Action Bar 上添加按钮
- Android学习路线(八)为Action bar添加action按钮
- Android官方开发文档Training系列课程中文版:添加ActionBar之添加Action按钮
- 添加按钮
- WD4A 按钮action的获取
- 通过属性添加Action
- 添加Action View
- Action Bar添加Style
- 添加Action Provider
- ECSHOP自定义action添加
- 关于PHP中websocket使用的详细注解
- 关于Alipay支付宝接口(Java版)
- 以ant方式从visual svn server checkout
- android studio配置butterknife 8.0以上版本
- HTML5学习笔记(零)
- 添加Action 按钮
- ssh三大框架整合--jar包
- Redux系列01:从一个简单例子了解action、store、reducer
- linux多线程学习(六)——信号量实现同步
- Construct Binary Tree from Inorder and Postorder Traversal
- jvm笔记4--类文件结构
- leetcode 35. Search Insert Position
- Filter高级开发(三)——压缩响应正文内容
- GL_CLAMP GL_CLAMP_TO_EDGE GL_CLAMP_TO_BORDER