精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

主題顏色提取 ——— Palette

移動(dòng)開發(fā) Android
調(diào)色板 Palette 是 Android L SDK 中的新特性。可以使用 Palette 從圖像中提取出突出的顏色(主色調(diào)),獲取到顏色之后我們?cè)賹⑦@個(gè)顏色值賦給 ActionBar、狀態(tài)欄等。從而達(dá)到界面色調(diào)的統(tǒng)一,使界面美觀協(xié)調(diào)。

[[184124]]

Palette

調(diào)色板 Palette 是 Android L SDK 中的新特性。可以使用 Palette 從圖像中提取出突出的顏色(主色調(diào)),獲取到顏色之后我們?cè)賹⑦@個(gè)顏色值賦給 ActionBar、狀態(tài)欄等。從而達(dá)到界面色調(diào)的統(tǒng)一,使界面美觀協(xié)調(diào)。

Palette 可以提取圖片中如下幾種特性的顏色:

  • Vibrant (有活力的)
  • Vibrant dark(有活力的 暗色調(diào))
  • Vibrant light(有活力的 明亮)
  • Muted (柔和的)
  • Muted dark(柔和的 暗色調(diào))
  • Muted light(柔和的 明亮)

內(nèi)部嵌套類

  • Palette.Builder

生成器類,生成 Palette 實(shí)例。

  • Palette.Filter

過濾器接口,使 Palette 有更加細(xì)膩的顏色過濾

  • Palette.PaletteAsyncListener

異步加載監(jiān)聽

  • pattle.Swatch

提供獲取結(jié)果的色彩樣本

所有的公共方法

返回值類型 方法及說明
static Palette from(List<Palette.Switch> switches)
通過預(yù)設(shè)的 Palette.Swatch 顏色樣本列表 來生成 Palette
static Palette.Builder from(Bitmap bitmap)
通過返回 Palette.Builder 實(shí)例來構(gòu)建 Palette
static Palette generate(Bitmap bitmap,int numColors)
該方法已被遺棄,建議用 Palette.Builder 來生成Palette
static Palette generate(Bitmap bitmap)
該方法已被遺棄,建議用 Palette.Builder 來生成Palette
static AsyncTask<Bitmap,Void,Palette> generateAsync(Bitmap bitmap,int numColor,Palette.PaletteAsyncListener listener)
該方法已被遺棄,建議用 Palette.Builder 來生成Palette
static AsyncTask<Bitmap,Void,Palette> generateAsync(Bitmap bitmap,Palette.PaletteAsyncListener listener)
該方法已被遺棄,建議用 Palette.Builder 來生成Palette
int getColorForTarget(Target target,int defaultColor)
返回一個(gè)從目標(biāo)獲取的的 rgb 色值
int getDarkMutedColor(int defaultColor)
返回一個(gè)柔和的暗色調(diào) rgb 值
Palette.Swatch getDarkMutedSwatch()
返回一個(gè)柔和的暗色調(diào)樣本類
int getDarkVibrantColor(int defaultColor)
返回一個(gè)鮮明的暗色調(diào) rgb 值
Palette.Swatch getDarkVibrantSwatch()
返回一個(gè)鮮明的暗色調(diào)樣本類
int getDomainColor(int defaultColor)
返回 Palette 中的主色調(diào) rgb值
Palette.Swatch getDomainSwatch()
返回一個(gè)主色調(diào)的樣本類
int getLightMutedColor(int defaultColor)
返回一個(gè)柔和的亮色調(diào)顏色 rgb
Palette.Swatch getLightMutedSwatch()
返回一個(gè)柔和的亮色調(diào)樣本類
int getLightVibrantColor(int defaultColor)
返回一個(gè)鮮明的亮色調(diào) rgb
Palette.Swatch getLightVibrantSwatch()
返回一個(gè)鮮明的亮色調(diào)樣本類
int getMutedColor(int defaultColor)
返回一個(gè)柔和的顏色 rgb
Palette.Swatch getMutedSwatch()
返回一個(gè)柔和的顏色樣本類
Palette.Swatch getSwatchForTarget(Target target)
為給定的目標(biāo)從 Palette 中返回一個(gè)選中樣本,如果未找到則返回空
List<Palette.Swatch> getSwatches()
獲取所有用在Palette中的Swatch樣本類
List<Target> getTargets()
獲取所有構(gòu)造 Palette 的 Target
int getVibrantColor(int defaultColor)
獲取一個(gè)鮮明的顏色 rgb
Palette.Swatch getVibrantSwatch()
獲取一個(gè)鮮明的樣本類

使用方式

使用 Palette 需先引入 Palette 的 support 資源包: 

  1. compile 'com.android.support:palette-v7:25.1.0' 

加載不能在主線程中進(jìn)行,加載方式有同步加載和異步加載兩種:

  • 同步
  1. //在加載圖片的后臺(tái)線程中同步加載Palette palette = Palette.from(bitmap).genrate(); 
  2.  
  • 異步
  1. //異步加載Palette.from(bitmap).genrate(new PaletteAsyncListener(){  public void onGenerated(Palette p){ 
  2.       . 
  3.       . 
  4.       . 
  5.   } 
  6. });  

具體使用代碼

這里使用 MvpDemo 中的部分代碼,跟 Glide 配合起來使用的,其他輔助類代碼直接 Demo 中查看。 

  1. //這是 Glide 加載狀態(tài)的監(jiān)聽回調(diào)@Overridepublic boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target,boolean isFromMemoryCache, boolean isFirstResource) {  //獲取到 Glide 加載圖片的 Bitmap 
  2.   final Bitmap bitmap = GlideUtils.getBitmap(resource);  //獲取到24dp的長(zhǎng)度 
  3.   final int twentyFourDip = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,                  24, ZhihuStoryInfoActivity.this.getResources().getDisplayMetrics());  assert bitmap != null
  4.   Palette.from(bitmap)          //設(shè)置構(gòu)建 Palette 時(shí)使用的最大顏色數(shù),風(fēng)景景觀推薦值在10-16,人臉圖像色值增加到24 
  5.           .maximumColorCount(3) 
  6.           .clearFilters() 
  7.           .setRegion(0, 0, bitmap.getWidth() - 1, twentyFourDip) 
  8.           .generate(new Palette.PaletteAsyncListener() {              @Override 
  9.               public void onGenerated(Palette palette) {                  boolean isDark;                  int lightness = ColorUtils.isDark(palette);                  if (lightness == ColorUtils.LIGHTNESS_UNKNOWN) { 
  10.                       isDark = ColorUtils.isDark(bitmap, bitmap.getWidth() / 2, 0); 
  11.                   } else { 
  12.                       isDark = lightness == ColorUtils.IS_DARK; 
  13.                   }                  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {                      int statusBarColor = getWindow().getStatusBarColor();                      final Palette.Swatch topColor = ColorUtils.getMostPopulousSwatch(palette);                      if (topColor != null && (isDark || Build.VERSION.SDK_INT >= Build.VERSION_CODES.M)) { 
  14.                           statusBarColor = ColorUtils.scrimify(topColor.getRgb(), isDark, SCRIM_ADJUSTMENT);                          if (!isDark && Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { 
  15.                               ViewUtils.setLightStatusBar(mStoryImg); 
  16.                           } 
  17.                       }                      if (statusBarColor != getWindow().getStatusBarColor()) { 
  18.                           ValueAnimator statusBarColorAnim = ValueAnimator.ofArgb( 
  19.                                   getWindow().getStatusBarColor(), statusBarColor); 
  20.                           statusBarColorAnim 
  21.                               .addUpdateListener(new ValueAnimator 
  22.                               .AnimatorUpdateListener() {                                  @Override 
  23.                                   public void onAnimationUpdate(ValueAnimator animation) { 
  24.                                       getWindow().setStatusBarColor((int) animation.getAnimatedValue()); 
  25.                                   } 
  26.                               });                                  //設(shè)置轉(zhuǎn)換顏色的動(dòng)畫時(shí)間 
  27.                                   statusBarColorAnim.setDuration(1000L); 
  28.                                   statusBarColorAnim.setInterpolator(                                          new AccelerateInterpolator()); 
  29.                                   statusBarColorAnim.start(); 
  30.                       } 
  31.                   } 
  32.               } 
  33.           }); 

 

責(zé)任編輯:龐桂玉 來源: Android技術(shù)之家
相關(guān)推薦

2019-09-08 10:24:48

Linux顏色主題終端主題

2020-06-30 08:55:29

Vim文本編輯器Linux

2023-08-16 17:56:05

GeditLinux

2021-05-10 06:02:44

CSS 文字動(dòng)畫技巧

2025-07-09 02:10:00

2021-08-14 22:58:24

Windows 11Windows微軟

2013-07-05 10:09:49

算法可視化Color

2017-09-04 18:05:54

Palette色彩貼合

2021-03-15 08:20:15

微軟Edge瀏覽器

2018-03-28 09:00:13

CITE主題館

2021-09-15 08:21:21

VSCode Dracula OffShades of P

2013-06-09 13:45:08

好桌道

2012-09-20 15:41:31

2011-04-11 10:12:07

Windows 7主題

2012-10-19 14:51:53

jQueryJSJavaScript

2011-05-23 14:20:59

WordPress

2009-12-04 13:34:52

Windows Aer

2009-03-24 09:02:03

Windows 7主題微軟

2023-07-07 19:16:53

GTKLinux

2013-02-28 13:12:00

RSA大會(huì)RSA大會(huì)主題RSA
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

一起草在线视频| 国产精品乱码久久久久久| 亚洲最大成人网4388xx| 日韩大陆毛片av| 精品日韩在线播放| 成人h动漫精品一区二区下载| 一区二区三区亚洲变态调教大结局 | 久草视频手机在线观看| 日韩精品影院| 91原创在线视频| 久久久日本电影| 亚洲一级片免费观看| 国产精品久久久久久久龚玥菲| 欧美午夜在线播放| 91在线视频网址| 国产精品久久久久久久久久久久久 | 精品国产亚洲一区二区三区在线| 婷婷中文字幕一区三区| 91久久精品www人人做人人爽| 99自拍偷拍视频| 免费观看一级欧美片| 国产中文字幕一区| 日韩在线观看成人| 国产一二三区av| 嫩草在线视频| 国产精品99久久不卡二区| 亚洲天堂第二页| 午夜免费福利在线| 成人ssswww在线播放| av不卡免费电影| 欧美中在线观看| 欧洲美一区二区三区亚洲| 午夜精品成人av| 亚洲国产一二三| 精品视频在线观看| 欧美一区二区三区网站| 不卡中文一二三区| 91精品一区二区三区久久久久久 | 日本50路肥熟bbw| 久久青青色综合| av电影天堂一区二区在线观看| 国产欧美一区二区| 91视频免费在线看| 日本成人中文| 欧美日韩性生活| 特级西西444| 性感美女一级片| 日本欧美一区二区| 欧美成人精品在线| 亚洲调教欧美在线| 凹凸av导航大全精品| 欧美性猛交xxxxx免费看| 亚洲精品欧洲精品| 亚洲黄色在线观看视频| 美女黄网久久| 久久中文字幕在线视频| 日本人添下边视频免费| japanese23hdxxxx日韩| 色视频成人在线观看免| 国产一二三四五| 菠萝蜜视频国产在线播放| 成人av网站大全| 国产欧美日韩精品丝袜高跟鞋| 校园春色 亚洲| 欧美三级不卡| 中文字幕无线精品亚洲乱码一区 | 四季av一区二区三区免费观看| 久久久亚洲午夜电影| 国产va免费精品高清在线| 精品在线观看一区| 久久夜色电影| 在线播放91灌醉迷j高跟美女| 国产一区二区在线免费播放| 日韩五码电影| 欧美香蕉大胸在线视频观看| 福利视频一区二区三区四区| 亚洲精品传媒| 久久新电视剧免费观看| 51午夜精品| 亚洲国产精品久久人人爱潘金莲| 成人妖精视频yjsp地址| 91精品国产综合久久香蕉922| 国产伦理吴梦梦伦理| 欧美日韩精品一本二本三本| 国内精品视频久久| 无码人妻av免费一区二区三区| 免费看欧美女人艹b| 7m精品福利视频导航| 劲爆欧美第一页| 中文亚洲字幕| 久久频这里精品99香蕉| 人妻丰满熟妇av无码区| 国产最新精品精品你懂的| 国产成人91久久精品| 6—12呦国产精品| 日韩av网站在线观看| 成人欧美一区二区三区黑人| 中文字幕永久免费视频| 日韩精品一区第一页| …久久精品99久久香蕉国产| 婷婷激情五月综合| 视频一区中文字幕| 日本中文字幕成人| 国产中文字幕视频| 国模少妇一区二区三区| 九九99久久| 亚洲AV无码精品色毛片浪潮| 久久久久久麻豆| 好吊色视频988gao在线观看| 校园春色亚洲色图| 精品国产免费视频| 亚洲婷婷在线观看| 日韩一区电影| 色天天综合狠狠色| 美国一级片在线观看| 99热在线成人| 欧美精品一区三区| 国产精品xxxxxx| 蜜臀a∨国产成人精品| 国产亚洲二区| 男女污视频在线观看| 国产亚洲污的网站| 亚洲午夜精品久久久久久浪潮| 91社区在线高清| 最新热久久免费视频| 中文字幕の友人北条麻妃| 国产精品久久久久77777丨| 欧美日韩免费在线视频| 国产一级片中文字幕| 国内黄色精品| xxxxxxxxx欧美| 国产精品视频免费播放| 老牛影视一区二区三区| 国产日韩二区| 91禁在线看| 日韩欧美在线看| 四季av综合网站| 日韩成人免费| 国产精品69久久久久| 午夜成人鲁丝片午夜精品| 亚洲一区影音先锋| 少妇搡bbbb搡bbb搡打电话| 欧美在线精品一区| 91精品国产高清自在线看超| 亚洲精品久久久久久久久久| 亚洲精选视频免费看| 欧美,日韩,国产在线| 在线观看精品| 亚洲欧美日韩一区二区三区在线| 日韩欧美在线视频播放| 全部av―极品视觉盛宴亚洲| 日本一区二区免费看| 在线免费观看污| 色哟哟一区二区在线观看| 亚洲精品永久视频| 91精品入口| 欧美激情视频一区| 精品一区二三区| 国产午夜精品福利| 亚洲这里只有精品| 秋霞蜜臀av久久电影网免费| 97香蕉久久夜色精品国产| 69视频免费看| 亚洲欧洲国产日本综合| 欧美国产在线一区| 99国产精品视频免费观看一公开 | 在线免费观看日韩视频| 国产成a人亚洲精品| 日本在线成人一区二区| 色呦呦在线播放| 欧美日韩一二三| 一级黄色片日本| 国产jizzjizz一区二区| 欧美不卡在线播放| 精品理论电影在线| 国内成人精品一区| 久久久久久久影视| 欧美精品乱码久久久久久按摩| 成人手机在线免费视频| 欧美一级视频| 国产a一区二区| 久草免费在线| 在线一区二区三区| 日本xxxx裸体xxxx| 精久久久久久| 91pron在线| 午夜久久中文| 日韩av一区在线| 亚洲影院一区二区三区| 成人影院中文字幕| 国产精品久久久久久久久久辛辛| 天堂网av成人| 亚洲一区二区国产| 久久午夜免费视频| 国产成人啪免费观看软件| 成人午夜免费在线| 区一区二视频| www.久久爱.cn| 国产cdts系列另类在线观看| 精品国产123| 蜜臀尤物一区二区三区直播| 伊人色综合久久天天人手人婷| 日本超碰在线观看| 极品av少妇一区二区| 日韩一区二区三区资源| a级日韩大片| 国产精品自在线| 日本免费一区二区六区| 亚洲国产精品福利| 日韩欧美亚洲一区二区三区| 成人免费不卡视频| 色www免费视频| 亚洲免费一区二区| 三级在线免费观看| 精品视频免费| 精品日本一区二区| 美国十次综合久久| 国产精品网站入口| 亚洲美女久久精品| 欧美黑人xxx| 成人免费在线| 中文字幕日韩欧美精品在线观看| 少妇无码一区二区三区| 欧美日韩国产精品| v8888av| 久久精品一区二区三区中文字幕| 永久免费在线看片视频| 精品精品99| 欧美另类一区| 国产日本久久| 久久av资源网站| 99青草视频在线播放视| 亚洲人成网7777777国产| 天堂v在线观看| 精品久久五月天| 日本中文字幕第一页| 亚洲一区二区三区激情| 丝袜美腿小色网| 99国产精品久久久久久久久久 | 免费高清视频精品| 热久久精品国产| 三区四区不卡| 日韩欧美亚洲v片| 加勒比久久综合| 日本成人看片网址| 精品国产乱码久久久| 日本不卡在线播放| 国语产色综合| 色噜噜狠狠色综合网| 视频成人永久免费视频| 91日韩在线播放| 大桥未久在线视频| 国语自产偷拍精品视频偷 | 国产97在线|日韩| 成人看片网页| 国产日本欧美一区二区三区| 久久女人天堂| 亚洲一区二区三区四区在线播放| 白浆在线视频| 38少妇精品导航| caoporn97在线视频| 久久国产精品电影| 欧美理论片在线播放| 久久久午夜视频| 中文在线а√在线8| 国产成人综合精品在线| 日韩三区免费| 91精品久久久久久久| 国产一区二区三区精品在线观看| 99www免费人成精品| 成人涩涩网站| 欧美精品久久久| 91亚洲自偷观看高清| 影音先锋成人资源网站| 欧美午夜a级限制福利片| 免费看一级大黄情大片| 欧美一区在线看| 国产一二三在线视频| 91一区二区| 久久综合久久久久| 99久久久久国产精品| 少妇一晚三次一区二区三区| 欧美hentaied在线观看| 亚洲激情免费视频| 国产视频欧美| 伊人五月天婷婷| 久久99精品国产麻豆不卡| 国产成人久久777777| 日本 国产 欧美色综合| 四虎国产精品永久免费观看视频| 日韩激情一区二区| 国产不卡的av| xnxx国产精品| 亚洲欧美在线不卡| 国产精品网站在线播放| 人人妻人人藻人人爽欧美一区| 波多野结衣中文一区| 日本一区二区视频在线播放| 久久先锋资源网| 欧美日韩黄色网| 亚洲欧洲精品一区二区三区不卡| 久久精品亚洲无码| 亚洲成av人片一区二区梦乃| 欧美成人黄色网| 色偷偷88欧美精品久久久| 国产人妖在线播放| 亚洲天堂精品在线| 菠萝蜜视频在线观看www入口| 欧美高清激情视频| 日本美女久久| 91精品视频在线看| 亚洲国产合集| 日本一区免费看| 欧美视频久久| 亚洲精品永久视频| 国产日韩欧美综合一区| 国产性一乱一性一伧一色| 亚洲一二三四在线观看| 中文在线字幕免费观| 日韩精品在线免费| 精品视频一二区| 深夜福利91大全| 成人欧美大片| 国产亚洲精品自在久久| 在线中文字幕亚洲| 国产一二三在线视频| jizzyou欧美16| 在线看日韩欧美| 99青草视频在线播放视| 777777777亚洲妇女| 亚洲一区网址| 欧美三级午夜理伦三级老人| 麻豆国产欧美一区二区三区| 国产精品自拍视频在线| 久久日一线二线三线suv| 久久综合亚洲色hezyo国产| 欧美精品 国产精品| jizz日韩| 久久久人成影片一区二区三区观看 | 亚洲视频免费在线| 精品爆乳一区二区三区无码av| 欧美日韩中文一区| 国产黄色片在线播放| 日韩av手机在线观看| 伊人久久大香线蕉综合网蜜芽| 日韩a∨精品日韩在线观看| 岛国一区二区在线观看| 国产性猛交普通话对白| 精品精品国产高清一毛片一天堂| 午夜小视频福利在线观看| 亚洲a成v人在线观看| 亚洲第一天堂| 欧美s码亚洲码精品m码| 另类小说一区二区三区| 日本视频在线免费| 欧美日韩一区二区三区高清| 欧美性猛交xxx乱大交3蜜桃| 国产日韩精品在线播放| 午夜免费一区| 中文字幕制服丝袜| 国产日韩欧美激情| 欧美 亚洲 另类 激情 另类| 中文字幕视频一区二区在线有码| 欧美网站免费| 日本女人高潮视频| www.性欧美| 久久久久99精品成人片我成大片| 亚洲欧美国产精品| 欧美性生活一级| 日本福利视频网站| 91网上在线视频| 中文字幕+乱码+中文字幕明步| 久久精品视频在线观看| 免费观看亚洲| 亚洲免费久久| 国产福利不卡视频| 在线观看亚洲天堂| 中文字幕日韩精品有码视频| 久久久久久亚洲精品美女| 亚洲人精品午夜射精日韩 | 看黄在线观看| 色噜噜一区二区| 国产传媒日韩欧美成人| 天堂中文在线网| 久久九九热免费视频| 国产精品45p| 国产女人18毛片| 91丨porny丨在线| 中文字字幕在线中文乱码| 九九热视频这里只有精品| 久久久久伊人| 国产真人做爰毛片视频直播| 久久精品视频在线免费观看| 国产乱码精品一区二区三区精东| 久久久噜久噜久久综合| 国产精品一区二区av交换| 中国特级黄色片| 色狠狠av一区二区三区| 污影院在线观看| 日韩三级电影免费观看|