上一篇是使用Material Design 创建App翻译系列—-開始学习篇,进入正题:


新的材料主题提供了下面内容:

1. 提供了同意设置颜色板的系统部件组件。

2. 为这些系统组件提供了触摸反馈动画。

3. Activity的过渡动画。

依据你的品牌标识,使用你所控制的颜色板能够自己定义材料主题的外观。

使用主题的属性能够给ActionBar 和 status bar进行着色。

系统部件拥有新的设计和触摸反馈动画。你能够为你的应用自己定义颜色板、触摸反馈动画以及Activity之间跳转的过渡动画。

下面是材料主题定义的方式:

1. @android:style/Theme.Material (dark version)

2. @android:style/Theme.Material.Light (light version)

3. @android:style/Theme.Material.Light.DarkActionBar

你能够使用以上几种的材料主题样式,引用的方式在R.style可见。



Dark material theme



Light material theme

注意事项:这个材料主题仅仅同意在Android 5.0及其以上系统使用。V7 的支持库(v7 support libraries)为一些组件提供了用于材料设计样式的主题,而且也能支持自己定义颜色板。详情请看:保证兼容性

自己定义颜色板

为了自己定义适合你的品牌的主题基础颜色,当继承材料主题的时候就使用主题属性来定义你的自己定义颜色了:

<resources>
<!-- inherit from the material theme -->
<style name="AppTheme" parent="android:Theme.Material">
<!-- Main theme colors -->
<!-- your app branding color for the app bar -->
<item name="android:colorPrimary">@color/primary</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="android:colorPrimaryDark">@color/primary_dark</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="android:colorAccent">@color/accent</item>
</style>
</resources>

自己定义状态栏

材料主题能够轻松的自己定义状态栏,因此你能够指定适合你品牌的一种颜色,使得白色的状态栏图标更显对照效果。在你继承了材料主题的前提下,想要自己定义状态栏的颜色,就用android:statusBarColor 属性。

默认情况,android:statusBarColor的属性值继承自 android:colorPrimaryDark。

你也能够绘制状态栏背后的内容。比如,假设你想要显示一张透明的状态栏下的照片,就要用略微淡点的暗的过渡色来确保白色的状态栏图标是能够看见的。通过设置android:statusBarColor 属性值到 @android:color/transparent 和 依据须要来调整windowFlags。你也能够用 Window.setStatusBarColor()来为动画或者隐退。

注意事项: 状态栏跟主工具栏应该是有一个明白的界定的。除了状态栏后面要显示图片或者多媒体相关的内容以外,在使用渐变色去确保状态栏的图标还是可见的。

当自己定义导航栏和状态栏的时候,仅让状态栏被改动或者调整透明度。

在其他情况下导航栏都保持黑色。

为个别视图控件加入主题

在xml布局中定义的控件须要指定 android:theme 属性来引用主题资源。

这个属性改动元素和子元素的主题。是为了在一个指定的界面的一部分改变其主题颜色的调色板。


以上翻译内容中外部链接的部分,以后会逐步翻译出来,眼下链接是官方的站点,假设须要查看的朋友,请先翻墙。

使用Material Design 创建App翻译系列----材料主题的使用(Using Material Theme)的更多相关文章

  1. 使用Material Design 创建App翻译系列---列表和卡片集的创建

    上一篇是使用Material Design 创建App翻译系列--材料主题的使用(Using Material Theme),进入正题: 想要在应用里创建Material Design风格的复杂列表和 ...

  2. Android Material Design-Creating Apps with Material Design(用 Material Design设计App)-(零)

    转载请注明出处:http://blog.csdn.net/bbld_/article/details/40400031 翻译自:http://developer.android.com/trainin ...

  3. 创建Material Design风格的Android应用--应用主题

    本人全部文章首先公布于个人博客,欢迎关注,地址:http://blog.isming.me 昨天正式公布了android 5,同一时候android developer站点也更新了,添加了创建Mate ...

  4. Android最佳实践之Material Design

    Material概述及主题 学习地址:http://developer.android.com/training/material/get-started.html 使用material design ...

  5. Material Design系列第一篇——Creating Apps with Material Design

    Creating Apps with Material Design //创建Material Design的App Material design is a comprehensive guide ...

  6. 再不迁移到Material Design Components 就out啦

    翻译自国外文档加自己理解 原文 我们最近宣布了 Material Design Components(MDC)1.1.0 ,这是一个库更新,为您的 Android 应用程序带来了 Material T ...

  7. 【Android】进入Material Design时代

    由于本文引用了大量官方文档.图片资源,以及开源社区的Lib和相关图片资源,因此在转载的时候,务必注明来源,如果使用资源请注明资源的出处,尊重版权,尊重别人的劳动成果,谢谢! Material Desi ...

  8. [转]ANDROID L——Material Design详解(动画篇)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 转自:http://blog.csdn.net/a396901990/article/de ...

  9. flutter学习之二Material Design设计规范

    前言: 最近在自学flutter跨平台开发,从学习的过程来看真心感觉不是那么一件特别容易的事.不但要了解语法规则, 还要知晓常用控件,和一些扩展性的外延知识,所以套一句古人的话“路漫漫其修远矣,无将上 ...

随机推荐

  1. 浏览器hack总结 详细的浏览器兼容性解决方法

    由于各浏览器对页面的解析不同,会导致页面在不同浏览器中显示的样式不一致,为了保持页面的统一,经常需要对浏览器进行兼容性问题的调试. CSS Hack 面对浏览器诸多的兼容性问题,经常需要通过CSS样式 ...

  2. 快的打车 技术部 在 杭州 招聘 #年前面试 年后入职#架构师 - 内推网(neitui.me)

    快的打车 技术部 在 杭州 招聘 #年前面试 年后入职#架构师 - 内推网(neitui.me) 陈丹 (cd**@kuaidadi.com) 01-18 发布了内推 #年前面试 年后入职#架构师 • ...

  3. 平衡工作与生活的艺术——GTD简单介绍

    1 开场白 大家好,今天是工作四年来第一次站在部门的分享会议上,所以有讲得不好的地方请大家见谅!而对于今天我想给大家介绍的"GTD工作方法",从2012年接触,认为对工作非常有帮助 ...

  4. 最新Cocos2d-x3.2开发环境搭建(windows环境下)

    原文地址:http://cache.baiducontent.com/c?m=9d78d513d9921cfe05ac837f7d16c067690297634d9dc7150ed58449e3735 ...

  5. CString Format 乱码问题

    CString m_buf;CStatic *m_static;char *szName;...m_buf.Format(":%s",szName);m_static->Se ...

  6. ConcurrentModificationException异常解决办法

    今天在写一个带缓存功能的访问代理程序时出现了java.util.ConcurrentModificationException异常,因为该异常是非捕获型异常而且很少见,所以费了些时间才找到问题所在,原 ...

  7. 正则表达式引擎的构建——基于编译原理DFA(龙书第三章)——3 计算4个函数

    整个引擎代码在github上,地址为:https://github.com/sun2043430/RegularExpression_Engine.git nullable, firstpos, la ...

  8. c++11 新特性之 autokeyword

    C++11是对眼下C++语言的扩展和修正.C++11包含大量的新特性:包含lambda表达式,类型推导keywordauto.decltype,和模板的大量改进. g++编译c++11命令加上 -st ...

  9. Ch02 从零开始实例学习4

    演练2-4  添加视图 原文链接:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-vi ...

  10. 三家DirectUI的商业公司

    目前正在研究DirectUI技术,分享一点心得给大家.关于DirectUI技术的介绍我在这里就不说了,可以上Google查一下,非常丰富.目前使用DirectUI技术开发的软件产品原来原丰富,比如QQ ...