Android.support.v7.widget.Toolbar学习
来源:互联网 发布:投票软件免费下载 编辑:程序博客网 时间:2024/06/06 13:12
Android.support.v7.widget.Toolbar 学习 android 5.0
android studio 使用:
- dependencies {
- compile 'com.android.support:appcompat-v7:23.0.1'
- compile 'com.android.support:design:23.1.1'
- }
要使用ToolBar首先我们要去掉ActionBar的主题风格,主要在res/values/style.xml和res/values-v21/style.xml(android 21API)
中配置如下内容:
res/values/style.xml和res/values-v21/style.xml
去掉ActionBar的主题最简单的方法就是Theme.AppCompat主题
别忘在android 5.0的style也得改成Theme.AppCompat主题
接下来我们在布局文件main_activity.xml中加入v7支持包下ToolBar控件如下:
main_activity.xml:
布局文件设置好后,我们在代码中获取该控件并替换ActionBar:
运行效果图,太难看了,而且完全不知道哪里是toolbar,我们希望的是右边的效果图。嗯,那么接下来我们就一步一步实现右边的效果图
首先我们来认识一下几个属性,直接上图:
我们从下往上说明:
1.navigationBarColor:这个是控制底部导航栏背景颜色的属性,而且仅在android 5.0以上版生效,低于API 21 版本无效。
2.windowBackground:顾名思义主视图窗体的背景颜色。
3.ToolBar:background:工具栏ToolBar的背景颜色,只需在布局文件设置即可
4.colorPrimaryDark:状态栏的背景颜色,在style.xml中设置
接下来,我们就需要对其进行配置了,首先我们先新建一个color.xml,颜色值均来自官方自动生成的模板:
我们在style.xml和布局文件中分别加入以上属性配置
style.xml:
activity_main.xml嗯,还不错!预期的效果已经开始出现了。接下来我们继续来为toolbar添加图标和菜单以及标题。
我们先在Java代码中添加logo,title 和 subtitle :
运行效果图如下:
已经相当清晰了,就不过多说明了,对了,导航菜单的点击事件是通过toolbar.setNavigationOnClickListener设置的。
那么到这里与最终的效果图就差3个小菜单了,嗯,接着完善,首先我们需要在menu文件夹下的新建一个菜单文件menu_main.xml(名称自定义即可),然后在menu_main.xml添加如下内容:
其中search菜单用的是android.support.v7.widget.SearchView类
关于菜单详细内容这里就不过介绍,需要补一下知识的话可以看一下这篇文章http://blog.csdn.net/ganlijianstyle/article/details/7566071
声明完xml文件,我们需要在代码中重写onCreateOptionsMenu(Menu menu)方法如下代码:
接下来,我们为菜单添加点击事件,这是可以通过Toolbar.OnMenuItemClickListener来设置监听事件
我们先创建Toolbar.OnMenuItemClickListener监听类:
1.colorAccent:这个属性是用于配置控件被选中时显示的颜色,eg:radio,checkBox等等。
2.textColorPrimary:Toolbar中的标题与小标题以及更多菜单中文字的颜色。
3.colorControlNormal:配置控件初始化显示时的颜色。
4.colorControlHighlight:配置点击控件时的效果颜色
5.colorControlActivated:点击控件(或者控件被选中)后显示的颜色,如果使用该属性,那么colorAccent的效果将被覆盖。
下面给出效果图:
最后附上动态图:
好了到此,都介绍完整了,下一篇我会结合侧滑菜单draglayout控件和导航Toolbar实现交换......
代码下载地址:http://download.csdn.net/detail/javazejian/9388065
- Android.support.v7.widget.Toolbar学习
- android.support.v7.widget.Toolbar错误
- android.support.v7.widget.Toolbar找不到
- android.support.v7.widget.Toolbar 详解
- android.support.v7.widget.Toolbar的使用
- 使用 android.support.v7.widget.Toolbar
- Android Studio Error inflating android.support.v7.widget.Toolbar
- 关于错误:android.widget.Toolbar无法转换为android.support.v7.widget.Toolbar
- android support v7 Toolbar控件
- The following classes could not be instantiated: - android.support.v7.widget.Toolbar 解决方法
- The following classes could not be instantiated: - android.support.v7.widget.Toolbar 解决办法
- Android -- android.support.v7.internal.widget.ActionBarOverlayLayout
- android.support.v7.internal.widget.ActionBarOverlayLayou
- android.support.v7.internal.widget.ActionBarView.HomeView
- android.support.v7.widget.RecyclerView的使用
- Android Eclipse Error inflating class android.support.v7.widget.RecyclerView
- android---- java.lang.NoClassDefFoundError:android.support.v7.widget.TintManager
- Didn't find class "android.support.v7.widget.RecyclerView"
- Java中hashCode的作用
- Log4J日志配置详解
- Android 杂项记录
- Oracle-实例化EM配置文件时出错
- Java注解(1)-注解基础
- Android.support.v7.widget.Toolbar学习
- 为什么跑完步了膝盖会疼痛?
- 索引的概述
- Linux 动态库的使用
- as连接不上手机
- Repeater中使用Button
- SQLDB 相关书籍
- Java中的ReentrantLock和synchronized两种锁定机制的对比
- Java注解(2)-注解处理器(运行时|RetentionPolicy.RUNTIME)