Android5.0特性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android5.0特性相关的知识,希望对你有一定的参考价值。
一.了解Material Design
1.概念:融合卡片式,立体式,拟物化的设计风格
2.详情:查看 http://design.1sters.com
3.官网链接:http://developer.android.com/training/material/theme.html
二.替换Theme
MaterialTheme颜色设置:http://www.materialpalette.com/red/deep-purple
1.setTheme方法必须要在setContentView或者super.onCreate方法之前调用
2.给Activity定义静态变量theme,然后给theme赋值,再重新创建Activity
三.View高度与阴影
https://developer.android.com/intl/zh-tw/training/material/shadows-clipping.html
1.View拥有Z属性,Z越大阴影越大,Z值高度View会覆盖在Z值低的View之上:
Z由2个因素组成:Z = elevation + translationZ
2.elevation表示view在相对于父view的高度,属于静态因素,可以在xml中直接使用属性,
也可以在代码中使用view.setEvelvation();
3.transtionZ表示view在Z方向移动的距离,属于动态因素,一般用于属性动画中,对view
的Z坐标进行改变;
4.Android对具有透明通道的背景图片不绘制阴影;
四.RecyclerView的使用
https://developer.android.com/intl/zh-tw/training/material/lists-cards.html
1.LayoutManager:控制RecyclerView如何显示布局,系统提供3个布局:
a.LinearLayoutManager:线性布局
b.GridLayoutManager: 网格布局
c.StaggeredGridLayoutManager: 瀑布流布局
2.RecyclerView.Adapter<MyAdapter.ViewHolder>:设置Adapter
3.设置点击事件,RecyclerView没有setOnItemClickListener,只能在Adapter中给View
设置Click事件
4.通知adapter更新:notifyDataSetChanged方法
五.SwipeRefreshLayout的使用
1.它内部可以包裹ListView,GridView等具有垂直方向手势的控件
2.可以设置刷新监听:
3.更改SwipeRefreshLayout的刷新进度条样式:
refreshLayout.setColorSchemeColors(Color.RED,Color.GREEN,Color.BLUE);//设置进度样式
refreshLayout.setProgressBackgroundColorSchemeColor(Color.parseColor("#66666666");//设置背景色
六.CardView的使用
CardLayout拥有高度和阴影,以及轮廓裁剪,圆角等功能
1.设置圆角:card_view:cardCornerRadius="10dp"
2.设置高度:card_view:cardElevation="10dp"
3.设置内边距:card_view:contentPadding="10dp"
4.设置背景色:card_view:cardBackgroundColor="?android:attr/colorPrimary"
七.使用Palette识别颜色,将拾取到的颜色赋予ActionBar,StatusBar,可以让界面色调统一
1.最活跃的颜色:palette.getVibrantColor(0)
2.最暗的活跃色: palette.getDarkVibrantColor()
3.最亮的活跃色: palette.getLightVibrantColor()
4.最柔和的颜色:palette.getMutedColor(0)
5.最暗的柔和色:palette.getDarkMutedColor(0)
6.最亮的柔和色:palette.getLightMutedColor(0)
七.与旧版本兼容
1.可以通过Support Library使用的:
a.RecyclerView
b.SwipeRefreshLayout
c.CardView
d.Palette颜色识别
e.定义theme:让应用的theme继承Theme.AppCompat,
同时定义属性的时候,去电android:,比如:
<item name="colorPrimary">#673AB7</item>
<item name="colorPrimaryDark">#512DA8</item>
2.定义多个layout,使用新API的布局放在res/layout-v21中,其他的放res/layout
3.在代码中对系统Version做判断,使用对应的效果
一.了解Material Design
1.概念:融合卡片式,立体式,拟物化的设计风格
2.详情:查看 http://design.1sters.com
3.官网链接:http://developer.android.com/training/material/theme.html
二.替换Theme
MaterialTheme颜色设置:http://www.materialpalette.com/red/deep-purple
1.setTheme方法必须要在setContentView或者super.onCreate方法之前调用
2.给Activity定义静态变量theme,然后给theme赋值,再重新创建Activity
三.View高度与阴影
https://developer.android.com/intl/zh-tw/training/material/shadows-clipping.html
1.View拥有Z属性,Z越大阴影越大,Z值高度View会覆盖在Z值低的View之上:
Z由2个因素组成:Z = elevation + translationZ
2.elevation表示view在相对于父view的高度,属于静态因素,可以在xml中直接使用属性,
也可以在代码中使用view.setEvelvation();
3.transtionZ表示view在Z方向移动的距离,属于动态因素,一般用于属性动画中,对view
的Z坐标进行改变;
4.Android对具有透明通道的背景图片不绘制阴影;
四.RecyclerView的使用
https://developer.android.com/intl/zh-tw/training/material/lists-cards.html
1.LayoutManager:控制RecyclerView如何显示布局,系统提供3个布局:
a.LinearLayoutManager:线性布局
b.GridLayoutManager: 网格布局
c.StaggeredGridLayoutManager: 瀑布流布局
2.RecyclerView.Adapter<MyAdapter.ViewHolder>:设置Adapter
3.设置点击事件,RecyclerView没有setOnItemClickListener,只能在Adapter中给View
设置Click事件
4.通知adapter更新:notifyDataSetChanged方法
五.SwipeRefreshLayout的使用
1.它内部可以包裹ListView,GridView等具有垂直方向手势的控件
2.可以设置刷新监听:
3.更改SwipeRefreshLayout的刷新进度条样式:
refreshLayout.setColorSchemeColors(Color.RED,Color.GREEN,Color.BLUE);//设置进度样式
refreshLayout.setProgressBackgroundColorSchemeColor(Color.parseColor("#66666666");//设置背景色
六.CardView的使用
CardLayout拥有高度和阴影,以及轮廓裁剪,圆角等功能
1.设置圆角:card_view:cardCornerRadius="10dp"
2.设置高度:card_view:cardElevation="10dp"
3.设置内边距:card_view:contentPadding="10dp"
4.设置背景色:card_view:cardBackgroundColor="?android:attr/colorPrimary"
七.使用Palette识别颜色,将拾取到的颜色赋予ActionBar,StatusBar,可以让界面色调统一
1.最活跃的颜色:palette.getVibrantColor(0)
2.最暗的活跃色: palette.getDarkVibrantColor()
3.最亮的活跃色: palette.getLightVibrantColor()
4.最柔和的颜色:palette.getMutedColor(0)
5.最暗的柔和色:palette.getDarkMutedColor(0)
6.最亮的柔和色:palette.getLightMutedColor(0)
七.与旧版本兼容
1.可以通过Support Library使用的:
a.RecyclerView
b.SwipeRefreshLayout
c.CardView
d.Palette颜色识别
e.定义theme:让应用的theme继承Theme.AppCompat,
同时定义属性的时候,去电android:,比如:
<item name="colorPrimary">#673AB7</item>
<item name="colorPrimaryDark">#512DA8</item>
2.定义多个layout,使用新API的布局放在res/layout-v21中,其他的放res/layout
3.在代码中对系统Version做判断,使用对应的效果
以上是关于Android5.0特性的主要内容,如果未能解决你的问题,请参考以下文章
细数Android5.0到Android7.X 多媒体技术新特性
Kotlin实例----android5.0新特性之palette