第一行代码读书笔记-第十二章 Material Design实战
来源:互联网 发布:c语言绝对值函数fabs 编辑:程序博客网 时间:2024/05/01 23:51
Material Design实战
这一章的主要知识点:
- ToolBar
- 滑动菜单
- DrawerLayout
- NavigationView
- 悬浮按钮
- FloatingActionButton
- SnackBar
- CoordinatorLayout
- 卡片式布局
- CordView
- AppBarLayout
- 下拉刷新
- 可折叠是标题栏
1:前言
Material Design 是有谷歌设计工程师基于优秀的设计原则,结合丰富到创新和科学技术所发明一套全新的界面设计语言,包含了视觉,运动,互动效果等特性materDesign是谷歌在14年提出的,在15年正式推出Design Support库,这个库将Material Design中最具有代表性的一些组件进行封装,使开发者能够轻易的将自己的应用Material化.
2:Toobar
2.1:为什么要用:
我们就拿Toobar正式我们MaterDesigin 之旅,我们平常开发App我们一般默认的是ActionBar,但由于设计的原因,ActionBar只能位于活动的顶部,不能实现实现Material 效果,谷歌官方不在推荐我们使用ActionBar了,而Toobar不仅继承ActionBar的所有属性,而且灵活性很高,应次做Android的我们是时候走一波TooBar了.
2.2:怎么用:
最初的头部(系统默认的)一: 首先我们需修改系统默认的主题,指定不带ActionBar的主题,我们这样做修改Value里面Styles.xml文件<!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style>修改后的<!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style>这里面有Theme.AppCompat.NoActionBar和Them.AppCompat.Light.NoActionBar这两个主题颜色可以选择.这个Theme.AppCompat.NoActionBar会把主题颜色设置为深色,陪衬颜色设为淡色如图所示.而Them.AppCompat.Light.NoActionBar效果如图所示:它会将主题颜色设为淡色,陪衬颜色设置为深色下面我们介绍一下三个属性代表的颜色二:布局文件为:<?xml version="1.0" encoding="utf-8"?><FrameLayout 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:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="ccut.com.materdesign.MainActivity"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?actionBarSize" android:background="@color/colorPrimary" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /></FrameLayout>上面代码中为什么要指定一个xmls:app的命名空间因为为了兼容之前的老版本,这是Android5.0才新出的.这样写就能够兼容Android5.0之前的版本了.三:修改活动的代码为:@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); }2.3:我们学一下ToolBar的常用功能
上面我们把ToolBar弄的和ActionBar差不多了,我们可以修改头部的那个字体在AndroidManifest.xml中指定,<application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="Fruits" android:supportsRtl="true" android:theme="@style/AppTheme">
我们在上面设置Toolbar的显示内容,接下来我们让Toolbar更好玩一点我们在res点击右键-->new -->Directory,创建Menu文件夹,然后点击menu文件夹--new--->menu resource file,命名为toolBar.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" > <item android:id="@+id/backup" android:icon="@drawable/ic_backup" android:title="Backup" app:showAsAction="always" /> <item android:id="@+id/delete" android:icon="@drawable/ic_delete" android:title="delete" app:showAsAction="ifRoom" /> <item android:id="@+id/setting" android:icon="@drawable/ic_settings" android:title="settings" app:showAsAction="never" /></menu>备注一下:
Always:永远显示在Toolbar中,屏幕不够,不显示 IfRoom:屏幕够就显示,不够就显示在Setting中 never:是永远显示在Setting中.
然后修改活动中的代码如下:@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.toolbar, menu); return true; }到这里,我们简单了解的ActionBar的用法,要使用更高的功能,少年,自己找吧,谷歌里百度一下,就知道了下一章,我们复习一下滑动菜单
阅读全文
0 0
- 第一行代码读书笔记-第十二章 Material Design实战
- 第一行代码第二版(郭霖著)笔记之第十二章(Material Design 实战)
- 《第一行代码》读书笔记:第十二章/传感器的用法
- 第二行代码学习笔记——第十二章:最佳的 UI 体验——Material Design 实战
- 第一行代码,第十二章-------传感器探究
- 第一行代码 读书笔记 第1章
- 第一行代码 读书笔记 第2章
- 读书笔记 《第一行代码》 第13章
- 《第一行代码》读书笔记
- 第一行代码读书笔记
- 《第一行代码》读书笔记
- 第一行代码读书笔记___1-2章
- 第一行代码读书笔记___3章
- 第一行代码读书笔记___4章
- 第一行代码Android第二章读书笔记
- 《第一行代码Android》读书笔记
- 第一行代码 读书笔记 2
- Android第一行代码读书笔记
- Codeforces Round #428 (Div. 2) D
- 多线程2
- python——深浅copy 及一些补充知识点
- linux学习---信号(signal,sigaction,kill,sigqueue,sigprocmask,sigpending,sigsuspend)
- Snapchat收购了一家3D成像公司,但似乎被坑了
- 第一行代码读书笔记-第十二章 Material Design实战
- 百万韩粉集中进入某直播平台原因何在?
- 创业路上无数坑,商标问题最不容小觑!
- 网红经济对接综艺节目 湖南卫视这步棋走得妙
- 除了发布Ticwatch 2,出门问问还“跨界‘带来另一款产品
- 数组(一)
- 首届5G峰会在京召开,探因国产5G缘何发展迅速
- SVM用于多类分类
- Xshell 的上传下载操作 (sftp)