图片的变暗与变亮
昨天,我做一個照片墻,需要當(dāng)用戶沒有選擇圖片刪除時,刪除圖標(biāo)變暗且不可點(diǎn)擊,選中了圖片后刪除圖標(biāo)變亮。查了一些資料,終于做出來了。
1.新建一個Drawable的 全局變量
private Drawable drawable;?
2.獲取需要變暗的圖標(biāo)
drawable = getResources().getDrawable(R.drawable.alarm_empty);?
3.變暗時調(diào)用兩行代碼
drawable.setColorFilter(Color.GRAY, PorterDuff.Mode.MULTIPLY); delImageView.setBackgroundDrawable(drawable);?
4.需要變量時調(diào)用兩行代碼
drawable.setColorFilter(Color.WHITE, PorterDuff.Mode.MULTIPLY); delImageView.setBackgroundDrawable(drawable);?
?
在網(wǎng)上查了資料,PorterDuff.Mode.MULTIPLY的含義。
MULTIPLY
[Sa * Da, Sc * Dc],正片疊底,即查看每個通道中的顏色信息,并將基色與混合色復(fù)合。結(jié)果色總是較暗的顏色,任何顏色與黑色復(fù)合產(chǎn)生黑色,任何顏色與白色復(fù)合保持不變,當(dāng)用黑色或白色以外的顏色繪畫時,繪畫工具繪制的連續(xù)描邊產(chǎn)生逐漸變暗的顏色。
?
其實(shí)就是兩圖層交集部分疊加后顏色,當(dāng)灰色與圖片疊加后,圖片就變暗了。與白色疊加后,恢復(fù)原圖。就是這樣簡單。
總結(jié)
- 上一篇: ViewPager的事件冲突的解决
- 下一篇: GridView的全选与反选