Android控制顏色透明度百分比的方法

RaoMeng發表於2018-12-06

顏色的值是以16進位制來表示,而顏色的透明度值要設定在原有顏色值上則需要左移6位。

Java的位運算是先將數值轉化為二進位制數,然後再移動相應位數,由於二進位制左移4位對應十六進位制是左移1位,所以要設定顏色透明度的百分比就得先將255乘以透明度的百分比,然後再左移4*6=24位。

  int color = ContextCompat.getColor(getApplicationContext(), android.R.color.holo_blue_dark);

  //這裡的mPercent就是顏色透明度的百分比
  mView.setBackgroundColor(((255 * mPercent) << 24) | color);
複製程式碼

相關文章