close

上一篇提到了說要如何改變 Drawable 的顏色

詳情點我 「Android 在程式中改變 Drawable 的顏色,How to dynamically change color of Drawable ? ( programmatically )』Willy's Fish教學筆記」

 

裡面的這段 code 其中最精華的就在這裡

ProterDuff.Mode 這是決定了新舊顏色的組合方式

一共有基本的 13 種方式,還有讓重疊顏色的方式不同的 5 種方式

今天我們來講基本方式就夠了,另外 5 種概念一樣,效果不同而己

現在假設我們有一個 紅圓形 與 藍方形,例圖如下

 

1、ProterDuff.Mode.ADD

保留兩者,並疊色

2、ProterDuff.Mode.CLEAR

清空

3、ProterDuff.Mode.DST

只留紅圓形

4、ProterDuff.Mode.DST_ATOP

保留藍方形並蓋上紅圓形交集處

5、ProterDuff.Mode.DST_IN

只留交集處,以紅圓為主

6、ProterDuff.Mode.DST_OUT

不留交集處,以紅圓為主

7、ProterDuff.Mode.DST_OVER

直接蓋上紅圓形

8、ProterDuff.Mode.SRC

只留藍方形

9、ProterDuff.Mode.SRC_ATOP

只留紅圓,交集處蓋上藍方形

10、ProterDuff.Mode.SRC_IN

只留交集處,以藍方形為主

11、ProterDuff.Mode.SRC_OUT

留下藍方形未交集處

12、ProterDuff.Mode.SRC_OVER

直接蓋上藍方形

13、ProterDuff.Mode.XOR

去掉交集處

 

以上就是 13 種基本方式的解說

 

 

 

資料來源:

https://developer.android.com/reference/android/graphics/PorterDuff.Mode

 

 


arrow
arrow

    顏澤偉 發表在 痞客邦 留言(0) 人氣()