zoukankan      html  css  js  c++  java
  • 【Android

      Toolbar是Android V7包中的一个控件,用来代替Action Bar作为界面的头部标题栏布局。Toolbar相对于Action Bar的特点是更加灵活,可以显示在任何位置。

      首先先来看Toolbar在布局文件中的代码怎么写,实际上跟其他Android原生控件一样,只需要设置宽高、背景等属性就可以了,如果有其他需求还可以设置theme等主题属性。

      下面是一个Toolbar在布局文件中的代码:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:id="@+id/activity_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#FFFFFFFF">
    
        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/colorPrimary"
            android:minHeight="?attr/actionBarSize"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
            app:theme="@style/ThemeOverlay.AppCompat.ActionBar" />
    
    </RelativeLayout>

      在布局文件中写了Toolbar之后运行,Toolbar只是显示为一个有背景的长条,上面没有任何东西,这是因为我们没有将Toolbar和Activity进行绑定。我们在Activity中调用setSupportActionBar()方法就可以将Toolbar和Activity进行绑定了。代码如下:

            // 使Toolbar取代原来的ActionBar
            setSupportActionBar(toolbar);

      Toolbar中可以放很多控件,看下面这张图,一目了然。

      这里列出一些为Toolbar设置属性的代码:

            // 设置Toolbar中的各个控件
            toolbar.setLogo(R.mipmap.ic_launcher);
            toolbar.setTitle("Toolbar title");
            toolbar.setTitleTextColor(Color.RED);
            toolbar.setSubtitle("Toolbar Subtitle");
            toolbar.setSubtitleTextColor(Color.YELLOW);
            toolbar.setNavigationIcon(android.R.drawable.ic_menu_camera);

      通过红色字的提示来设置,就可以绘制出不同的控件到Toolbar中。值得一说的是最右侧的三个图标,这三个图标实际上都是来自与一个menu文件,即这三个按钮属于同一个menu,设置了showAsAction属性为ifRoom的Item可以像途中的前两项一样,如果有足够的空间就可以显示出来;而设置了showAsAcion属性为never的Item就存放在最右边的项中,点击这一项可以弹出一个下拉列表展示其余项。menu文件中的内容如下:

    <menu xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto">
        <item
            android:id="@+id/action_edit"
            android:icon="@android:drawable/ic_menu_edit"
            android:orderInCategory="80"
            android:title="编辑"
            app:showAsAction="ifRoom" />
    
        <item
            android:id="@+id/action_share"
            android:icon="@android:drawable/ic_menu_share"
            android:orderInCategory="90"
            android:title="分享"
            app:showAsAction="ifRoom" />
    
        <item
            android:id="@+id/action_settings"
            android:orderInCategory="100"
            android:title="设置"
            app:showAsAction="never" />
    </menu>

      此处还需要注明一点,如果不给Activity绑定menu,Toolbar中就不会显示菜单按钮,就算最右边的三个点的图案也不会显示,只有在设置了menu之后才会显示。

      Toolbar还会和DrawerLayout、CoordinatorLayout等控件结合使用,这里给大家一些传送门,供大家参考:

      以上就是对Toolbar的简单使用的介绍,下面贴出码云上的源码,供大家参考:

    DEMO地址

  • 相关阅读:
    可视化数据库管理工具DataGrip使用详解
    MySQL常用函数
    你必须掌握的 21 个 JAVA 核心技术!
    idea中那些好用到飞起的插件
    Object使用
    单页面应用和多页面应用的区别及优缺点
    正则常用匹配
    npm --save-dev 和 --save 的区别
    js常用小技巧
    js复制文字到剪切板
  • 原文地址:https://www.cnblogs.com/itgungnir/p/6210810.html
Copyright © 2011-2022 走看看