안드로이드 - 색상으로 비트 맵을 채우십시오
문제
저는 Android와 함께 일하고 있으며 미리 정해진 크기의 비트 맵을 미리 정해진 색상으로 채우기 위해 빠른 방법이 필요합니다.
그러나 다음 코드는 나에게 효과가 없습니다.
비트 맵 입력은 변한 비트 맵입니다
int old = input.getPixel(0, 0);
Canvas c = new Canvas(input);
Rect rect = c.getClipBounds(); // The dimensions of the bitmap are returned
c.drawARGB(a, r, g, b);
int n = input.getPixel(0, 0);
if(old==n)
Log.e(TAG, "Values didn't change!");
return input;
안심하십시오. '오래된'값과 (a | r | g | b)의 값은 다르지만, 밑면 아래에 캔버스를 사용하여 색상을 '그려'하면 비트 맵은 오래된 값을 유지합니다.
비트 맵과 색상 값을 취하고 그 색상으로 채워진 비트 맵을 반환하는 모든 방법에 만족합니다.
해결책
나는 충분한 정보를 제공하지 않았다!
내 알파 가치는 범위를 벗어났습니다.
int a = 0xFF<<24
그래서 내가 전화했을 때
c.drawARGB(a,r,g,b);
조용히 실패했고 값을 바꾸지 않았습니다.
제휴하지 않습니다 StackOverflow