您好,我正在开发一个适用于 android 的音乐播放器,我需要帮助以使背景颜色与播放歌曲的专辑封面相同,就像 Sony Walkman 一样。所以有人可以展示一下如何做到这一点,或者至少让我知道在应该如何做的轨道上。
我最近开始使用 Android,所以请放轻松,抱歉英语不好
您好,我正在开发一个适用于 android 的音乐播放器,我需要帮助以使背景颜色与播放歌曲的专辑封面相同,就像 Sony Walkman 一样。所以有人可以展示一下如何做到这一点,或者至少让我知道在应该如何做的轨道上。
我最近开始使用 Android,所以请放轻松,抱歉英语不好
您可以使用 v7 调色板支持库。它包括Palette类,可让您从图像中提取突出的颜色。
https://developer.android.com/reference/android/support/v7/graphics/Palette.html
例子
构建.gradle
compile 'com.android.support:palette-v7:23.4.0'
活动或片段
public void updatePlayerBar(Bitmap bitmap) {
Palette.from(bitmap).generate(new Palette.PaletteAsyncListener() {
public void onGenerated(Palette palette) {
Palette.Swatch swatch = palette.getVibrantSwatch();
if (swatch == null) swatch = palette.getMutedSwatch(); // Sometimes vibrant swatch is not available
if (swatch != null) {
// Set the background color of the player bar based on the swatch color
mContent.setBackgroundColor(swatch.getRgb());
// Update the track's title with the proper title text color
mTitle.setTextColor(swatch.getTitleTextColor());
// Update the artist name with the proper body text color
mArtist.setTextColor(swatch.getBodyTextColor());
}
}
});
}