2012-03-29 2 views
5

RadioButton (xml 레이아웃에 이 정의되어 있고 RadioGroup에 있음)의 텍스트 색상을 변경하려고합니다.Android 라디오 버튼에 setTextColor를 사용하는 방법은 무엇입니까?

나는 텍스트 색상 속성을 설정하여 이클립스 안드로이드 레이아웃 편집기에서 직접 텍스트 색상을 변경하는 경우에 "@ 색상/레드"(이 I strings.xml의 정의)이, 잘 작동하지만 난 때

myRadioButton.setTextColor(R.color.red); 

로 런타임에 프로그램이 할 만 의도 한대로되지 적색, 회색 색상을집니다.

R.color.red (@ color/red)는 ("# FF0000")으로 올바르게 정의되지만 레이아웃 편집기에서는 텍스트 색상이 빨간색으로 바뀌지 만 Java 명령.

+0

사용'의 GetResources() getColor에서 (R.color.red)를 대신. 'R.color.red'의 –

+0

답변 해 주셔서 감사합니다.하지만 이것을 사용하고 버튼을 선택 취소하면 색상이 기본 색상으로 돌아 가지 않습니다. 이것을 어떻게 할 수 있습니까? – Ahmed

+0

'onCheckedChanged()'에서 기본 색상으로 변경하려고합니까? –

답변

13

당신의 color.xml이 같은 경우 :

<color name="errorColor">#f00</color> 

후 표시하려면이 코드를 사용 :`

myRadioButton.setTextColor(getResources().getColor(R.color.red)); 
+1

getColor()는 API 23에서 더 이상 사용되지 않으며 이제 ContextCompat.getColor (context, R.color.your_color); – SanVed

4

그렇게

myRadioButton.setTextColor(Color.RED); 
or 
myRadioButton.setTextColor(Color.rgb(red, green, blue)); 
// where red green and blue are the int values 

당신이 다음) ( 의 GetResources 사용 자원에서 얻을하려는 경우 편집 할 수있는 몇 가지 다른 방법이 있습니다 getColor에서 (R.color.red).;

관련 문제