Creating Apps With Material Design —— Working with Drawables

简介: 转载请注明 http://blog.csdn.net/eclipsexys 翻译自Developer Android,时间仓促,有翻译问题请留言指出,谢谢Drawable通过可绘制了以下功能帮助您实现材料设计你的应用程序:     可绘制着色     突出的颜色提取     矢量可绘 这一课将告诉您如何使用您的应用程序这些功能。

转载请注明 http://blog.csdn.net/eclipsexys 翻译自Developer Android,时间仓促,有翻译问题请留言指出,谢谢


Drawable

通过可绘制了以下功能帮助您实现材料设计你的应用程序: 


    可绘制着色 
    突出的颜色提取 
    矢量可绘 

这一课将告诉您如何使用您的应用程序这些功能。 


可调色的Drawable资源


采用Android5.0(API等级21)以上,则可以着色定义为透明遮罩位图和nine-patches图。您可以调整它们的色彩资源或主题属性,以便于解决颜色资源(例如, ?android:attr/colorPrimary)。通常情况下,您将创建这些资产只有一次,并自动将它们上色,以符合您的主题。 

您可以将色彩以BitmapDrawable或NinePatchDrawable对象与setTint()方法。您还可以设置色调的颜色和模式,在不同的界面与 android:tintandroid:tintMode属性,从图像中提取颜色突出。 

Android的支持库R21及以上包括面板类,它可以让你从图像中提取突出的颜色。这个类中提取以下突出的颜色: 

    充满活力 
    充满活力的黑暗 
    充满活力的光 
    静音 
    柔和的暗 
    柔和的光线 

要提取这些颜色,传递一个Bitmap对象到您加载图片的Palette.generate()静态方法在后台线程。如果你不能使用线程调用Palette.generateAsync()方法,并提供了一个监听器来代替。 

你可以从图像使用getter方法​​在面板类,如Palette.getVibrantColor突出的颜色。 

要使用调色板类项目,以下摇篮依赖添加到您的应用程序的模块:

dependencies {
    ...
    compile 'com.android.support:palette-v7:+'
}

创建VerctorDrawable

在安卓5.0(API等级21)以上,则可以定义向量可绘制对象,其中规模又不失清晰。你的矢量图像仅需要一个资源文件,而不是一个资产文件中的位图图像的情况下,每个屏幕密度。要创建一个矢量图像,你定义了一个<vector> XML元素内部的形状的细节。 

下面的例子定义了心脏的形状矢量图像:

<!-- res/drawable/heart.xml -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    <!-- intrinsic size of the drawable -->
    android:height="256dp"
    android:width="256dp"
    <!-- size of the virtual canvas -->
    android:viewportWidth="32"
    android:viewportHeight="32">

  <!-- draw a path -->
  <path android:fillColor="#8fff"
      android:pathData="M20.5,9.5
                        c-1.955,0,-3.83,1.268,-4.5,3
                        c-0.67,-1.732,-2.547,-3,-4.5,-3
                        C8.957,9.5,7,11.432,7,14
                        c0,3.53,3.793,6.257,9,11.5
                        c5.207,-5.242,9,-7.97,9,-11.5
                        C25,11.432,23.043,9.5,20.5,9.5z" />
</vector>

矢量图在Android中表示为VectorDrawable对象。有关pathData语法的详细信息,请参阅SVG的路径参考。有关动画的矢量可绘制对象的属性的详细信息,请参阅矢量动画效果可绘制对象。








相关文章
Reading:一款不错的Material Desgin风格的Kotlin版本的开源APP
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/81946831 Reading https://github.com/Hankkin/Reading 简介 很久不见,重新拾起博客吧,今天分享一个开源APP-Reading,项目的初衷是因为自己平时翻文章,但是公众号又经常忘记看,自己索性搞一个APP吧,顺便练一下Kotlin。
1428 0
仿知乎app登录界面(Material Design设计框架拿来就用的TexnInputLayout)
在我脑子里还没有Material Design这种概念,就我个人而言,PC端应用扁平化设计必须成为首选,手当其冲的两款即时通讯旺旺和QQ早就完成UI扁平化的更新,然而客户端扁平化的设计本身就存在天生的缺陷,手指和鼠标箭头最大的区别是在于前者有温度和感觉的,这时候Material Design应运而生。
1640 0
基于Material Design设计的分享文字图片的APP
写在前面:这个项目是自己当时为了准备面试而做的,由于时间匆忙,水平有限,项目多多少少存在一些问题。代码的整洁性与复用性,以及整体架构的搭建都不尽人意,大家看看里面的一些效果就好。
1294 0
一款基于Material Desgin设计的APP
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/50413625 源码小编已经上传到github上了,求star啊 https://github.
993 0
Android Material Design TabLayout属性app:tabMode和app: tabGravity
Android Material Design TabLayout属性app:tabMode和app: tabGravity Android Material Design 中的TabLayout有两个比较有用的属性 app:tabMode、app:tabGravity, (1)app:tabMode有两个值:fixed和scrollable。
1701 0
Creating Apps With Material Design —— Maintaining Compatibility
转载请注明 http://blog.csdn.net/eclipsexys 翻译自Developer Android,时间仓促,有翻译问题请留言指出,谢谢 保持兼容性 如material design和自定义活动的过渡部分材料设计功能只能在Android5.0(API等级21)以上。
812 0
Creating Apps With Material Design —— Defining Custom Animations
转载请注明 http://blog.csdn.net/eclipsexys 翻译自Developer Android,时间仓促,有翻译问题请留言指出,谢谢 定义动画 在材料设计动画让用户与您的应用程序进行交互时,为他们的行为提供反馈,并提供可视化的连续性。
824 0
Creating Apps With Material Design —— Defining Shadows and Clipping Views
View转载请注明 http://blog.csdn.net/eclipsexys 翻译自Developer Android,时间仓促,有翻译问题请留言指出,谢谢 定义阴影和裁减 材料设计引入了深度的UI元素。
826 0
Creating Apps With Material Design —— Creating Lists and Cards
转载请注明 http://blog.csdn.net/eclipsexys 翻译自Developer Android,时间仓促,有翻译问题请留言指出,谢谢 创建Lisst和Cards 在你的应用程序创建复杂的清单,并与材料设计风格卡,您可以使用RecyclerView和CardView部件。
889 0
让你的 APP换上Material Design
转自  :http://www.jianshu.com/p/f22c0f50ac3f# 字数3293 阅读1357 评论15 喜欢60 Material Design 我的更多 android 博文,关注作者~每周更新一篇 Android干货博文http://xuyushi.github.io/archives/ 吐槽 作为一个 And
1879 0

热门文章

最新文章

  • 1
    MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
    173
  • 2
    原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
    16
  • 3
    【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
    5
  • 4
    1688APP 原数据 API 接口的开发、应用与收益
    19
  • 5
    PiliPala:开源项目真香,B站用户狂喜!这个开源APP竟能自定义主题+去广告?PiliPala隐藏功能大揭秘
    2
  • 6
    APP-国内主流安卓商店-应用市场-鸿蒙商店上架之必备前提·全国公安安全信息评估报告如何申请-需要安全评估报告的资料是哪些-优雅草卓伊凡全程操作
    15
  • 7
    语音app系统软件源码开发搭建新手启蒙篇
    1
  • 8
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    3
  • 9
    flutter3-dart3-dymall原创仿抖音(直播+短视频+聊天)商城app系统模板
    5
  • 10
    语音交友app系统源码功能及技术研发流程剖析
    4