ToolBar学习笔记

《第二行代码》学习笔记--ToolBar

一、简介
ToolBar,是Material Design控件,在5.0之后引入,大大扩展ActionBar,更加灵活,直接继承的是ViewGroup。

二、基本使用
1.依赖:直接在build.gradle中添加V7兼容包

compile 'com.android.support:appcompat-v7:23.4.0'

这里版本号和compileSdkVersion版本相对应。

2.Mianfest.xml


        
            
                

                
            
        
    

在Mainifest.xml文件中,我们看到我们采用了AppTheme主题,我们先去Style.xml中去除ActionBar,具体如下:



3.开始使用:首先在布局中添加ToolBar,并对ToolBar的一些属性进行说明:
在根布局需要引入命名空间:

xmlns:app="http://schemas.android.com/apk/res-auto"

布局中添加:


属性值中的“?”表示对Android系统的主题样式进行重用;
android:theme 表示让ToolBar单独使用深色系主题;
app:popupTheme 表示让弹出的菜单栏使用淡色系主题;

刚刚程序中使用了淡色系主题,此时,ToolBar的字体将自动为深色系,就变成了黑色,丑了,单独为ToolBar改深色系,这样文字就变成了淡色系。但弹出框又变成了深色系,也就是弹出的时候背景都是黑黑的,此时我们再指定弹出框为淡色系,让文字又变为深色。

ToolBar学习笔记_第1张图片
没有指定theme和popupTheme
ToolBar学习笔记_第2张图片
仅指定theme
ToolBar学习笔记_第3张图片
指定theme和popupTheme
ToolBar学习笔记_第4张图片
指定theme和popupTheme

4.还需要新建一个menu才可以到上图的效果,menu如下:
toolbar_menu.xml




    
    
    

always 表示总是要显示菜单项,如果空间不够不显示;
never 表示不显示菜单项;
ifRoom 表示空间够才显示;

5.java代码中,简单设置即可显示:

setSupportActionBar(mToolbar);
ActionBar supportActionBar = getSupportActionBar();
if (supportActionBar != null) {
    supportActionBar.setDisplayHomeAsUpEnabled(true);
}

效果图:(标题显示了"首页",因为我们在Mainfest.xml中label属性设置了"首页")


ToolBar学习笔记_第5张图片
指定theme和popupTheme

你可能感兴趣的:(ToolBar学习笔记)