国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Android > 正文

Android應(yīng)用的Material設(shè)計(jì)中圖片的相關(guān)處理指南

2019-12-12 06:40:14
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

可伸縮的矢量圖片不會(huì)丟失清晰度,并且單一顏色的app-icon是完美的
可定義一個(gè)bitmap作為透明度(alpha)和運(yùn)行時(shí)的顏色
可對(duì)一個(gè)bitmap image取色,會(huì)取出它比較顯眼的顏色
官網(wǎng)地址:https://developer.android.com/training/material/drawables.html

以下圖片的功能能幫助你在app中實(shí)現(xiàn)Material設(shè)計(jì):

  • 圖片著色
  • 顏色提取
  • 矢量圖片

Tint Drawable Resources  為圖片資源染色

在Android 5.0(API級(jí)別21)及以上,你可以將圖片和9-patch定義為掩飾透明度。你能使用顏色資源(如,?android:attr/colorPrimary)或主題屬性來(lái)給它們上色。通常,你只需創(chuàng)建這些資源一次,且自動(dòng)匹配你的主題為它們上色。
可以為BitmapDrawable和NinePatchDrawable 的對(duì)象使用setTint(int tint)進(jìn)行染色。也可以在xml中定義android:tint和android:tintMode屬性。
?關(guān)于setTint(int tint)的參數(shù),可以是一個(gè)@color/下的屬性,也可以是一個(gè)xml的selector,selector中的item是使用了數(shù)字的,如:

 <selector xmlns:android="http://schemas.android.com/apk/res/android">  <item android:state_focused="true" android:color="@color/testcolor1"/>  <item android:state_pressed="true" android:state_enabled="false" android:color="@color/testcolor2" />  <item android:state_enabled="false" android:color="@color/testcolor3" />  <item android:color="@color/testcolor5"/> </selector>

?關(guān)于xml中定義屬性,如:

<?xmlversion="1.0"encoding="utf-8"?><nine-patchxmlns:android="http://schemas.android.com/apk/res/android"   android:tint="@color/abc_primary_text_material_light"   android:tintMode="src_over"  ... ></nine-patch>

Extract Prominent Colors from an Image  從圖片抽取明顯的顏色
在api21上的support-v7庫(kù)中有一個(gè)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(),用于在后臺(tái)線程中執(zhí)行,如果在前臺(tái)線程中創(chuàng)建Palette對(duì)象,那么可以使用Palette.generateAsync()。

Create Vector Drawables  創(chuàng)建矢量圖片
在Android 5.0(API級(jí)別21)及以上 可以創(chuàng)建矢量圖片,如下面的例子可以繪制一個(gè)心形的矢量圖:

<!-- res/drawable/heart.xml --><vector xmlns:android="http://schemas.android.com/apk/res/android"  <!-- intrinsic size of the drawable -->  android:height="256dp"  android:width="256dp"  <!-- size of the virtual canvas -->  android:viewportWidth="32"  android:viewportHeight="32"> <!-- draw a path --> <path android:fillColor="#8fff"   android:pathData="M20.5,9.5            c-1.955,0,-3.83,1.268,-4.5,3            c-0.67,-1.732,-2.547,-3,-4.5,-3            C8.957,9.5,7,11.432,7,14            c0,3.53,3.793,6.257,9,11.5            c5.207,-5.242,9,-7.97,9,-11.5            C25,11.432,23.043,9.5,20.5,9.5z" /></vector>

矢量圖片在Android中使用VectorDrawble對(duì)象與之對(duì)應(yīng)。path的更多信息請(qǐng)見(jiàn):http://www.w3.org/TR/SVG11/paths.html#PathData。

設(shè)計(jì)標(biāo)準(zhǔn)樣例

選用圖片

201647143812255.jpg (360×640)

201647143834743.jpg (360×640)

描述具體事物,優(yōu)先使用照片。然后可以考慮使用插畫。
圖片上的文字

201647143901264.jpg (360×640)

圖片上的文字,需要淡淡的遮罩確保其可讀性。深色的遮罩透明度在20%-40%之間,淺色的遮罩透明度在40%-60%之間。

201647143921405.jpg (360×640)

對(duì)于帶有文字的大幅圖片,遮罩文字區(qū)域,不要遮住整張圖片。

201647143939265.jpg (360×640)

可以使用半透明的主色蓋住圖片。
提取顏色

201647143957004.jpg (360×640)

Android L可以從圖片中提取主色,運(yùn)用在其他UI元素上。
圖片加載過(guò)程

201647144014065.png (760×372)

圖片的加載過(guò)程非常講究,透明度、曝光度、飽和度3個(gè)指標(biāo)依次變化,效果相當(dāng)細(xì)膩。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 德令哈市| 宁海县| 海原县| 铜鼓县| 雷州市| 弥渡县| 龙游县| 饶平县| 封开县| 隆子县| 喀喇| 威信县| 界首市| 巴林左旗| 辉南县| 中卫市| 灌南县| 房产| 沁阳市| 汉中市| 崇明县| 北海市| 东辽县| 德昌县| 女性| 甘南县| 晋中市| 仲巴县| 保山市| 石狮市| 襄樊市| 连江县| 安塞县| 乌鲁木齐县| 沅陵县| 葫芦岛市| 元朗区| 杭锦后旗| 济阳县| 东阳市| 沈阳市|