Android-使用tint一張圖制作selector

Android 有時(shí)候制作按下的效果挺麻煩的,得放色值不同的兩張圖涉枫,這個(gè)就比較尷尬了邢滑,明明是相同的資源。現(xiàn)在Android Material Design 中提供了一個(gè)東西:Tint愿汰,一張矢量圖是能適配所有的顏色困后。

首先這個(gè)東西可以直接對(duì) ImageView 上色渲染

如下,相同的兩個(gè)圖衬廷,使用 tint 改變顏色:

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:src="@mipmap/ic_launcher" />

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:src="@mipmap/ic_launcher"
    android:tint="#FFF" />

使用 tint 制作selector

以下為成品的 selector摇予,selector_bg.xml:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/    apk/res/android">
    <item android:drawable="@drawable/btn_begin_pressed" android:state_pressed="true">
    </item>
    <item android:drawable="@drawable/btn_begin">
    </item>
</selector>

其中btn_begin為png圖片,而btn_begin_pressed則是使用此圖進(jìn)行tint著色后的xml文件.

btn_begin_pressed.xml:

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/btn_begin_down"
    android:tint="#7b5b5b"
    android:tintMode="multiply">
</bitmap>

android:tint: 設(shè)置的是顏色

android:tintMode:設(shè)置的是類型(src_in,src_over,src_atop,add,screen,multiply)

各個(gè)屬性效果如圖:

tinMode

然后不管在xml布局中android:background吗跋,還是java代碼setBackgroundResource侧戴,都可以直接使用成品背景圖了

改變MD下的 EditText 背景色和光標(biāo)顏色

為了實(shí)現(xiàn) Material Design的效果,使用的主題里的顏色配置比如 primaryColor跌宛,colorControlNormal酗宋,colorControlActived什么的會(huì)讓 EditText 自動(dòng)適配背景顏色,
其實(shí)現(xiàn)方式就是使用了 tint ,如下圖:

隨便舉個(gè)栗子

先不用在意那個(gè) TextInputLayout,看背景色疆拘,對(duì)就是那條線./摳鼻~
然后我們不想用這個(gè)顏色怎么辦捏蜕猫?

對(duì)于那條線可以直接設(shè)置:

android:backgroundTint="@color/顏色"

額,那個(gè)光標(biāo)也想改了哎迄?回右?需要新建一個(gè) cursor_shape.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <size android:width="1dp" />
    <solid android:color="@color/顏色" />
</shape>

然后就可以設(shè)置:

android:textCursorDrawable="@drawable/cursor_shape"

關(guān)于 tint 的源碼分析參考:

談?wù)凙ndroid Material Design 中的Tint(著色)

再說點(diǎn)兒

說到了 tint 著色,不得不提一下Android5.0加入的取色器:Palette,可以根據(jù)Bitmap顯示出來的東西提取顏色漱挚,然后到處 set翔烁,達(dá)到背景或者 toolBar 和圖片達(dá)到和諧,看看效果:

MD大法好

好吧隨便盜的圖棱烂,就提一下這個(gè)東西租漂,還沒有 Demo...


本文作者:paradoxie
個(gè)人主頁(yè):謝盒盒的小黑屋,不止說技術(shù)
簡(jiǎn)書地址:簡(jiǎn)書主頁(yè),專注說技術(shù)
github地址:paradoxie
轉(zhuǎn)載請(qǐng)注明出處哩治,蟹蟹!
-------我的夢(mèng)想真的是做一條咸魚秃踩!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市业筏,隨后出現(xiàn)的幾起案子憔杨,更是在濱河造成了極大的恐慌,老刑警劉巖蒜胖,帶你破解...
    沈念sama閱讀 218,386評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件消别,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡台谢,警方通過查閱死者的電腦和手機(jī)寻狂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來朋沮,“玉大人蛇券,你說我怎么就攤上這事》兀” “怎么了纠亚?”我有些...
    開封第一講書人閱讀 164,704評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)筋夏。 經(jīng)常有香客問我蒂胞,道長(zhǎng),這世上最難降的妖魔是什么条篷? 我笑而不...
    開封第一講書人閱讀 58,702評(píng)論 1 294
  • 正文 為了忘掉前任骗随,我火速辦了婚禮,結(jié)果婚禮上赴叹,老公的妹妹穿的比我還像新娘蚊锹。我一直安慰自己,他們只是感情好稚瘾,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,716評(píng)論 6 392
  • 文/花漫 我一把揭開白布牡昆。 她就那樣靜靜地躺著,像睡著了一般摊欠。 火紅的嫁衣襯著肌膚如雪丢烘。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,573評(píng)論 1 305
  • 那天些椒,我揣著相機(jī)與錄音播瞳,去河邊找鬼。 笑死免糕,一個(gè)胖子當(dāng)著我的面吹牛赢乓,可吹牛的內(nèi)容都是我干的忧侧。 我是一名探鬼主播,決...
    沈念sama閱讀 40,314評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼牌芋,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼蚓炬!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起躺屁,我...
    開封第一講書人閱讀 39,230評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤肯夏,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后犀暑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體驯击,經(jīng)...
    沈念sama閱讀 45,680評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,873評(píng)論 3 336
  • 正文 我和宋清朗相戀三年耐亏,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了徊都。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,991評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡广辰,死狀恐怖碟贾,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情轨域,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評(píng)論 5 346
  • 正文 年R本政府宣布杀餐,位于F島的核電站干发,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏史翘。R本人自食惡果不足惜枉长,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,329評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望琼讽。 院中可真熱鬧必峰,春花似錦、人聲如沸钻蹬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽问欠。三九已至肝匆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間顺献,已是汗流浹背旗国。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留注整,地道東北人能曾。 一個(gè)月前我還...
    沈念sama閱讀 48,158評(píng)論 3 370
  • 正文 我出身青樓度硝,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親寿冕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蕊程,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,941評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容