获取android API级别8中的活动背景颜色

时间:2013-04-12 22:46:19

标签: android

怎么做? 在API级别17中,我使用了:

int color = ((ColorDrawable) activityLayout.getBackground()).getColor();

但在API级别11中添加了ColorDrawable方法getColor(),因此我无法使用此方法。

抱歉我的英文。

由于

1 个答案:

答案 0 :(得分:9)

这可能看起来很愚蠢,但我建议在ColorDrawable上绘制1 pixel dimension bitmap并使用bitmap.getPixel(0, 0);

获取位图中的像素颜色

//示例代码

  ColorDrawable colorDrawable=((ColorDrawable) activityLayout.getBackground());

  Bitmap bitmap= Bitmap.createBitmap(1, 1, Config.ARGB_4444);
  Canvas canvas= new Canvas(bitmap);
  colorDrawable.draw(canvas);   
  int pix = bitmap.getPixel(0, 0);
  bitmap.recycle();