您的位置:首页 > 移动开发 > Android开发

android Palette调色板的使用方法

2016-03-29 14:38 330 查看
Material Design鼓励开发者使用动态颜色,尤其是当我们有丰富的图片资源要显示时,v7兼容包中的Palette库就是这样诞生的,它可以让我们从一张图片中抽取一部分颜色去控制我们的UI元素,从而创造一个沉浸式的体验,抽取的颜色会包括充满活力的和柔和的色调,这些色调会使前景文本颜色具有最佳的视觉效果.

如果是Eclipse首先我们找到sdk/extras/android/support/v7/palette/libs/android-support-v7-palette.jar导入我们的工程。

Bitmap map=BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
Palette.Builder palette = Palette.from(map);
Palette.Swatch swatch = palette.generate().getVibrantSwatch();
TextView tv=(TextView)findViewById(R.id.title);
if(swatch != null){
tv.setTextColor(swatch.getRgb());
}


Palette 的属性

Palette.Swatch是一个提取颜色的样本,通过该类可以提取到包含了我们需要的颜色内容

•返回一个有活力的颜色. Palette.getVibrantSwatch()

•返回一个有活力的暗色. Palette.getDarkVibrantSwatch()

•返回一个有活力的亮色. Palette.getLightVibrantSwatch()

•返回一个柔和的颜色. Palette.getMutedSwatch()

•返回一个柔和的暗色. Palette.getDarkMutedSwatch()

•返回一个柔和的亮色. Palette.getLightMutedSwatch()

有活力的颜色和有活力的暗色是开发者使用最多的,具体使用哪一种取决于你自己

Swatch 属性

•getPopulation(): 返回被该样本代表的像素的总数

•getRgb(): 返回一个 RGB 颜色值

•getHsl(): 返回一个 HSL颜色值.

•getBodyTextColor(): 返回一个适合做内容体颜色的颜色值

•getTitleTextColor(): 返回一个适合做标题颜色的颜色值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: