ActionItem概念

案例仿知乎首页的ActionBar

一、编写布局文件activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"> <ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/background"
android:scaleType="fitXY"/> </RelativeLayout>

二、编写menu.xml菜单文件

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!--
showAsAction设置item是显示在溢出菜单中还是在ActionBar上:
always:一直在ActionBar上
ifRoom:当ActionBar有可用空间才显示到ActionBar上
never:永源不显示在ActionBar
withText:把图标和文字显示在ActionBar,但空间不够时可能显示不全
-->
<item android:id="@+id/search"
android:icon="@drawable/search"
android:title="search"
app:showAsAction="always"></item> <item android:id="@+id/bell"
android:icon="@drawable/bell"
android:title="消息"
app:showAsAction="ifRoom"></item> <item android:id="@+id/setting"
android:title="设置"
app:showAsAction="ifRoom"></item> <item android:id="@+id/about"
android:title="关于"
app:showAsAction="never"></item> </menu>

三、MainActivity.java中重写onCreateOptionsMenu(Menu menu)方法

    .....
//解析菜单资源文件
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater(); //实例化MenuInflater
inflater.inflate(R.menu.menu,menu);//解析菜单文件
return super.onCreateOptionsMenu(menu);
}

效果:

最新文章

  1. STM32 Unicode 与 GBK 转换 .bin文件放到SD卡是啥意思
  2. Table &#39;performance_schema.session_variables&#39; doesn&#39;t exist
  3. CM: 使用gerrit,提交代码到CM
  4. 21 数据库编程 - 《Python 核心编程》
  5. Android内存溢出解决方案(OOM)
  6. c++ 普通高精乘
  7. 海康、大华IpCamera RTSP地址和格式
  8. Idiomatic Python手记一: average in FP way
  9. C语言表达式和语句
  10. Centos 7下网卡bonding配置之mode4
  11. shell脚本--php执行普通shell命令
  12. linux下GPRS模块使用AT命令实现拨接电话,发中英文短信
  13. Jetbrains IDE 中 compass sass 设置
  14. 手动创建mfc工程(留存方便复制)
  15. os &amp; sys
  16. 20155312 2006-2007-2 《Java程序设计》第六周学习总结
  17. 规范大于编码-我的javaWeb开发规范
  18. 20155225 2006-2007-2 《Java程序设计》第四周学习总结
  19. git clone的时候报error: RPC failed; result=18错误
  20. python 学习笔记二_列表

热门文章

  1. Gunicorn+Nginx+Flask项目部署
  2. thymeleaf抛出项目上下文ServletContext ,session,request等信息
  3. JS中Class的两种写法
  4. Jmeter执行多个sql查询语句
  5. Docker安装常见的应用与将本地镜像推送到阿里云
  6. ATT&amp;CK红队评估实战靶场(一)
  7. PYTHON 黑帽子第二章总结
  8. 数字电路建模 - jchdl
  9. 【zookeeper】安装教程文档需下载
  10. JAVASE(十七) 多线程:程序、进程、线程与线程的生命周期、死锁、单例、同步锁