2013-03-13 3 views
3

이 작업을 수행해야하는 이유는 프로그래밍 방식으로이 텍스트 색상이 다운로드되고 xml에 미리 정의되어 있지 않기 때문입니다. 나는이 Replace selector images programmaticallyStateListDrawable에 프로그램 적으로 "# e3bb87"색상 추가

난 단지에 대한 getResources().getColor(R.color.anycolor)을 잊지

states.addState(new int[] {android.R.attr.state_pressed},**theMethodImLookingFor**("#e3bb87")); 

로 전환하는 방법을

StateListDrawable states = new StateListDrawable(); 
states.addState(new int[] {android.R.attr.state_pressed}, 
    getResources().getDrawable(R.drawable.pressed)); 

에서 알 필요가

, 색상은 XML에 정의되지 않은

+0

을 (0xff00ff00) ; –

+0

이것은 흥미로운 점입니다. 제목에서 명시적인 "# e3bb87"을 제거하여 사람들이 쉽게 어떤 색상으로도 찾을 수 있도록 제안합니다. – John

답변

5

당신이 사용할 수 있습니다 : 당신이 text.setTextColor를 사용하여 시도 할 수 있습니다

states.addState(new int[] {android.R.attr.state_pressed}, 
    new ColorDrawable(Color.parseColor("#e3bb87"))); 
0

방법은 것 읽어 be

,210
1

나는 당신이 이런 식으로 뭔가를 할 수 ColorDrawable

찾고있는 생각 :

StateListDrawable states = new StateListDrawable(); 
int color = 0xff00ff00; 
states.addState(new int[] {android.R.attr.state_pressed}, 
    new ColorDrawable(color)); 
+0

감사합니다. 단 하나의 대답 만 수락 할 수 있습니다. "하이랜더와 같을 수있는 것은 오직 하나뿐입니다." –

관련 문제