zoukankan      html  css  js  c++  java
  • Android学习笔记添加ActionItem

    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);
        }
    

    效果:

  • 相关阅读:
    Android Permission 访问权限大全(转)
    .NET中DateTime.Now.ToString的格式化字符串
    linux
    code only
    常用JavaScript操作页面元素的方法
    C#将字符串数组转换为以逗号分隔的字符串
    C#去除数组空格
    追源索骥:透过源码看懂Flink核心框架的执行流程
    高并发请求的缓存设计策略
    spark 2.3 导致driver OOM的一个SparkPlanGraphWrapper源码的bug
  • 原文地址:https://www.cnblogs.com/lzpq/p/12993827.html
Copyright © 2011-2022 走看看