Android之Palette动态决定UI色彩风格
来源:互联网 发布:php cgi 性能 编辑:程序博客网 时间:2024/06/05 09:31
根据图片来决定标题的颜色和标题栏的背景色,这样视觉上更具有冲击力和新鲜感,而不像统一色调那样呆板。
大家想知道这个效果如何实现的吗?
学习Palette轻轻松松搞定此效果哦~!
Palette是什么?
它能让你从图像中提取突出的颜色。这个类能提取以下突出的颜色:
Vibrant(充满活力的)
Vibrant dark(充满活力的黑)
Vibrant light(充满活力的亮)
Muted(柔和的)
Muted dark(柔和的黑)
Muted lighr(柔和的亮)
如何使用?
要提取这些颜色,在你加载图片的后台线程中传递一个位图对象给Palette.generate()静态方法。如果你不适用线程,则调用Palette.generateAsync()方法并且提供一个监听器去替代。
你可以在Palette类中使用getter方法来从检索突出的颜色,比如Palette.getVibrantColor。
如果是Android Studio 要在你的项目中使用Palette类,增加下面的Gradle依赖到你的程序的模块(module)中:
- dependencies {
- ...
- compile 'com.android.support:palette-v7:21.0.+'
- }
如果是Eclipse首先我们找到sdk/extras/android/support/v7/palette/libs/android-support-v7-palette.jar导入我们的工程。
然后使用generateAsync方法传入当前图片的bitmap,在传入一个监听,在监听里面我们拿到图片上颜色充满活力的颜色,最后设置标题背景和字体的颜色,代码如下:
- Palette.generateAsync(bitmap,
- new Palette.PaletteAsyncListener() {
- @Override
- public void onGenerated(Palette palette) {
- Palette.Swatch vibrant =
- palette.getVibrantSwatch();
- if (swatch != null) {
- // If we have a vibrant color
- // update the title TextView
- titleView.setBackgroundColor(
- vibrant.getRgb());
- titleView.setTextColor(
- vibrant.getTitleTextColor());
- }
- }
- });
0 0
- Android之Palette动态决定UI色彩风格
- Android通过Palette来动态决定UI色彩风格
- Android通过Palette来动态决定UI色彩风格
- Android通过Palette来动态决定UI色彩风格
- Android5.0通过Palette来动态决定UI色彩风格
- Android Material Design:使用Palette优化界面色彩搭配。
- Android学习之 UI--Metro风格
- Android Material Design 之 Palette
- 使用 Palette 让你的 UI 色彩与内容更贴合
- android palette
- Android 5.0学习之使用Palette
- Android 5.0学习之使用Palette
- Android 5.0学习之使用Palette
- Android 5.0学习之使用Palette
- Android 5.x之Toolbar和Palette
- Android Material Design系列之Palette
- Android Material Design系列之Palette
- android studio UI 通过material palette配置颜色
- Android中处理大图片时图片压缩
- 树状数组资料、
- 判断回文数
- 集合的排序 一个集合中存储无序元素 使其有序化(字典顺序) 不去重
- Qt 之 QQ系统表情(一)
- Android之Palette动态决定UI色彩风格
- web路径、表单重复提交(2种方法)、验证码
- HDOJ 5253 连接的管道(最小生成树)
- C++虚函数表
- Systemctl命令基础
- 通过调用门进行有特权级变换的转移,详细注解 对pmtest5.asm解释很详细.
- PHP的日期和时间--php基础最详细教程
- Servlet基础相关
- AsyncTask异步任务