关于MaterialDesign 几种控件的介绍

1.MaterialDesign的简单介绍
Material Design是Android 5.0系统的新特性,并在以后在App中将成为一种设计规范。作为一套设计语言的标准,它定义了布局、字体、颜色、运动交互模式的标准。Android 5.0 Lollipop 是迄今为止最重大的一次发布,因为 material design 的存在,android的界面风格发生了新的改变,它刷新了整个 Android 的用户体验。

详细了解请查看:
Google官网:http://www.google.com/design/spec/material-design/introduction.html
中文网站:http://www.uisdc.com/comprehensive-material-design-note

2.关于如何实现MaterialDesign
通过在项目里添加依赖appcompat库,design库,RecyclerView库,CardView库等就可以在项目中使用MaterialDesign的控件。
实现MaterialDesign设计风格主要通过下面几个控件实现:
RecyclerView
CardView
FloatingActionButton
TextInputLayout
Snackbar
TabLayout
NavigationView
几种布局:
CoordinatorLayout
AppBarLayout
CollapsingToolbarLayout
3.MaterialDesign控件的使用
3.1 CoordinatorLayout
3.1.1 介绍
这是一个父控件,继承自ViewGroup,它是加强的FramLayout可以协调其他控件并实现控件之间的联动。通过在其直接子View上设置behavior来实现子View的不同交互效果。一般作为一个界面的根布局,来协调AppbarLayout,ToolBarLayout以及ScrollView之间的联动。
这里写图片描述
3.1.2 behavior:
Behavior只有是CoordinatorLayout的直接子View才有效,通过为CoordiantorLayout的子View设置Behavior来实现不同的交互效果。
设置Behavior的两种方式:
① app:layout_behavior 布局属性
在布局中设置,值为自定义 Behavior 类的名字字符串(包含路径),类似在 AndroidManifest.xml 中定义四大组件的名字一样,有两种写法,包含包名的全路径和以”.”开头的省略项目包名的路径。
② @CoordinatorLayout.DefaultBehavior 类注解在需要使用 Behavior 的控件源码定义中添加该注解,然后通过反射机制获取。这个方式就解决了我们前面产生的疑惑,系统的 AppBarLayout 、FloatingActionButton 都采用了这种方式,所以无需在布局中重复设置。
3.1.3 CoordinatorLayout.Behavior与scroll_flag之间的关系
根据官方的谷歌文档,AppBarLayout目前必须是第一个嵌套在CoordinatorLayout里面的子view。
然后,我们需要定义AppBarLayout与滚动视图之间的联系。在RecyclerView或者任意支持嵌套滚动的view比如NestedScrollView上添加app:layout_behavior。support library包含了一个特殊的字符串资源@string/appbar_scrolling_view_behavior,它和AppBarLayout.ScrollingViewBehavior相匹配,用来通知AppBarLayout 这个特殊的view何时发生了滚动事件,这个behavior需要设置在触发事件(滚动)的view之上。

猜你喜欢

转载自blog.csdn.net/qq_32365409/article/details/61415734
今日推荐