내 응용 프로그램에서 내 사용자 지정 색 선택기 위젯을 사용하고 있습니다. onDraw
방법은 다음 코드를 사용하여 두 Shaders
를 혼합 :두 셰이더 (색 선택기)를 작성하십시오
ComposeShader mShader = new ComposeShader(mValShader, mSatShader, PorterDuff.Mode.MULTIPLY);
그러나, 나는이 얻을 결과는 내가 좀하고 싶습니다 것이 아니다. 위에서 언급 한 Shaders
의 모습을 어떻게 아래 볼 수 있습니다 :
+ =
당신이 볼 수 있듯이 그것은 전혀하지 않습니다 작품 ...
이 결과는 (다소처럼 보이는 방법이다) :
EDIT (가능한 해결 방법) :
만들려면 내가 다음 코드를 사용해야 할 일 :
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
그러나 난 정말이 코드 줄 내 응용 프로그램에 미치는 영향을 이해하지 않습니다. 내 말은 내가 HARDWARE ACCELERATION
을 설정한다는 것을 이해하고 있다는 뜻입니다. 제 신청서에 대한 결과가 있습니까? Shader
을 그리면 다시 켜야합니까? 아무도 설명 할 수 있을까요?