• ToolBar的美化


    谷歌提出的 Material Design,字面上的意思就是材料的绘制(我理解为就是怎么界面做的好看),但是他还有属于自己的空间和效果, 它提供了一个Design Support库,对一些常用的效果和控件进行封装。

    使用Material Design 就要隐藏掉默认的ActionBar,修改软件的主题显示样式,就在style,xml文件里面,替换掉下面这句,这句parent和面跟的就是隐藏ActionBar的主题,

        <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">

    加入ToolBar

      <android.support.v7.widget.Toolbar
                    android:id="@+id/toolbar"
                    android:layout_width="match_parent"
                    android:layout_height="?attr/actionBarSize"//和原有Bar一样高
                    android:background="?attr/colorPrimary"
                    android:popupTheme="@style/ThemeOverlay.AppCompat.Light"
                    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"//指定ToolBar主题
                    app:layout_scrollFlags="scroll|enterAlways|snap" /><!--Toobar在APPBarlayout中添加这个属性ToolBar会跟着主题内容上滑隐藏,下划出现-->

    在ToolBar上添加action按钮,在res目录,新建Directory文件夹(menu),创建一个yoolbar.xml文件,showAsAction属性是设置按钮的显示,always永远显示在Toolbar 中,屏幕空间不够则不显示,ifRoom表示屏幕有足够空间句显示,否则就显示在菜单中,nerve表示永远显示在菜单中,

    注:ToolBar中的action只会显示图标。而action按钮只会显示文字。

    <?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">
        <item
            android:id="@+id/backup"
            android:icon="@drawable/b"
            android:title="返回"
            app:showAsAction="always" />
        <item
            android:id="@+id/delete"
            android:icon="@drawable/a"
            android:title="删除"
            app:showAsAction="ifRoom" />
        <item
            android:id="@+id/settings"
            android:icon="@drawable/th_qq"
            android:title="设置"
            app:showAsAction="never" />
    </menu>

    在主函数中设置
    并且重写onCreateOptionsMenu()方法,添加空间到ToolBar

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
            setSupportActionBar(toolbar);
      @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.toolbar, menu);
            return true;
        }
  • 相关阅读:
    Ubuntu18.04通过网线共享网络
    [转载]PyTorch上的contiguous
    [转载]集线器、交换机、路由器和全双工、半双工
    如何在交换机上组建局域网
    [转载]PyTorch中permute的用法
    Pytorch报错:cuda runtime error (59) : device-side assert triggered at /pytorch/aten/src/THC/generic/THCTensorMath.cu:26
    org.apache.commons.httpclient工具类(封装的HttpUtil)
    org.apache.commons.httpclient工具类
    kali下ll命令无法使用
    Kali Linux 下载、引导、安装
  • 原文地址:https://www.cnblogs.com/zhoushenglei/p/7222356.html
Copyright © 2020-2023  润新知