Material design之Compatibility(适配)
Compatibility,为Android L版本和旧版本进行适配设置。
一:Material Theme适配
因为Material Theme只能在Android L的版本中使用,所以为了应用能在旧的的版本上运行,
所以可以通过下面的适配来实现。
- 定义一个旧版本的
res/values/styles.xml。 - 定义一个Android L办的样式
res/values-v21/styles.xml。 - 在manifest文件中添加样式主题。
二:Layouts适配
布局文件的适配
- 将Android L版本的布局文件放在
res/layout-v21/中。 - 将低于L版本的布局文件放在
res/layout/中。
三:UI Widgets
在新版本中添加的两个控件RecyclerView 和 CardView,由于他们是在Android L 的开发者预览支持包中的,
所以在旧版本使用的时候有一下两个限制,但是在L版本中是没有限制的。
CardView:在回落的时候需要额外的图片来填充阴影。CardView:不会裁剪那些圆角相交的子控件。
四:Animation APIs
下面的几组API只能在L版本中使用:
- Activity transitions
- Touch feedback
- Reveal animations
- Path-based animations
所以在使用这些API之前,需要判断设备运行的系统版本号。
Material design之Compatibility(适配)的更多相关文章
- Material Design系列第七篇——Maintaining Compatibility
Maintaining Compatibility This lesson teaches you to Define Alternative Styles Provide Alternative L ...
- Material Design学习笔记
Wiki->移动开发->Android->Material Design-原质化设计 (友情链接:http://wiki.jikexueyuan.com/project/materi ...
- Material Design Lite,简洁惊艳的前端工具箱 之 交互组件。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接, 博客地址为http://www.cnblogs.com/jasonnode/ . 网站上有对应 ...
- Andorid视觉新冲击-Material design语言
[写在前面] google在2014年 I/O大会上推出了一种新的设计设计语言—Material design,这种设计语言语言旨在为手机.平板电脑.台式机和“其他平台”提供更一致.更广泛的“外观和感 ...
- 【Android】进入Material Design时代
由于本文引用了大量官方文档.图片资源,以及开源社区的Lib和相关图片资源,因此在转载的时候,务必注明来源,如果使用资源请注明资源的出处,尊重版权,尊重别人的劳动成果,谢谢! Material Desi ...
- Android Material Design调色板
转: http://www.stormzhang.com/design/2014/12/26/material-design-palette/ Material Design出来一段时间了,身为And ...
- Android Material Design-Creating Apps with Material Design(用 Material Design设计App)-(零)
转载请注明出处:http://blog.csdn.net/bbld_/article/details/40400031 翻译自:http://developer.android.com/trainin ...
- 聊聊 Material Design 里,阴影的那些事儿!
当你的设计师要求你在某个 View 上增加阴影效果,那你只需要认真阅读本文,阴影的问题就不再是问题. 一.前言 设计师的世界,与常人不同,有时候想要扁平化的风格,有时候又想要拟物化的风格.而在 Mat ...
- appcompat v21: 让 Android 5.0 前的设备支持 Material Design
1. 十大Material Design开源项目 2. appcompat v21: 让 Android 5.0 前的设备支持 Material Design 主题 AppCompat已经支持最新的调 ...
随机推荐
- HDU 5296 Annoying problem
Annoying problem Time Limit: 16000/8000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others ...
- webDriver API——第13部分UI Support
class selenium.webdriver.support.select.Select(webelement) deselect_all() Clear all selected entries ...
- java阅读笔记
前言:面向对象设计的几大原则? 1>针对接口编程,而不是针对实现编程 2>优先使用对象组合,而不是类继承 1.只根据抽象类中定义的接口来操纵对象有以下两个好处? 1)客户无须知道他们使用对 ...
- 如何实现 Copying derived entities using only base class pointer
#include <iostream> struct CloneableBase { ; }; template<class Derived> struct Cloneable ...
- newWindow 弹出的新窗口居中显示
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- HIVE的transform函数的使用
Hive的TRANSFORM关键字提供了在SQL中调用自写脚本的功能,适合实现Hive中没有的功能又不想写UDF的情况.例如,按日期统计每天出现的uid数,通常用如下的SQL SELECT date, ...
- 代理模式和php实现
代理模式(Proxy Pattern) : 给某一个对象提供一个代 理,并由代理对象控制对原对象的引用.代理模式的英 文叫做Proxy或Surrogate,它是一种对象结构型模式 模式动机: 在某些情 ...
- unity, OnTriggerEnter2D不触发
我两个物体A,B都添加了Circle Collider 2D,并且都勾选了is Trigger,我在A的脚本里用void OnTriggerEnter2D(Collider2D coll)检测碰撞,但 ...
- 双向链表LinkedList使用
LinkedList是传统意义上的链表也就是双向链表.每个元素都是节点,都可以指向下一级 在前添加,在后添加: mSource.AddLast(...) mSource.AddFirst(...) 在 ...
- 从request获取各种路径总结
一.获得都是当前运行文件在服务器上的绝对路径 在servlet里用: this.getServletContext().getRealPath() 在struts用: this.getServlet( ...