使用android:tint屬性去調整色調。
android:tintMode 着色模式
screen
multiply
and
src_atop/src_in/src_over
setTint(int tint)
setTint(int tint)的參數,可以是一個@color/下的屬性,也可以是一個xml的selector,selector中的item是使用了數字的
setColorFilter 同時設定着色顔色和着色模式
從圖檔中抽取顔色:
在api21上的support-v7庫中有一個android-support-v7-palette.jar,它能夠讓你從圖檔中抽取一些顯眼的顔色:
Palette p = Palette.generate(Bitmap bitmap);
·鮮豔的 p.getVibrantColor(int defaultColor);
·鮮豔的黑暗 p.getDarkVibrantColor(int defaultColor);
·鮮豔的明亮 p.getLightVibrantColor(int defaultColor);
·柔和的 p.getMutedColor(int defaultColor);
·柔和的黑暗 p.getDarkMutedColor(int defaultColor);
·柔和的明亮 p.getLightMutedColor(int defaultColor);
Palette.generate(),用于在背景線程中執行,如果在前台線程中建立Palette對象,那麼可以使用Palette.generateAsync()。