2011-10-06 3 views
2

:해결 동적 나는 이런 식으로 뭔가를 할 수 있어야합니다

if(condition){ 
textview.setStyle(R.styles.a1); 
}else{ 
textview.setStyle(R.styles.a2); 
} 

것은이있다, 당신은 런타임에 스타일을 변경할 수 없다 setTextApperience 및 이와 유사한 같은 방법 그러나 스타일을 설정하기위한 것이 아닙니다. 내 질문은 테마에 따라 다른보기의 텍스트보기에 대해 다른 배경을 설정하는 방법입니다. 예를 들어 themeA에서 id = tv1 인 textview의 색상은 파란색이고 themeB의 경우 id = tv1 인 textview의 색상은 빨간색입니다. 내가 런타임 somebackground에서 테마를 설정할 수 있다는 사실을 알고 ... : ...이 일이 포럼에서 논의하지만 난 일을 찾을 수 없습니다 것을 알고

나는

EDIT1 필요

그러나 내 문제는 특정 요소에 대해 다른 테마에 대해 다른 backgorund를 설정하는 방법입니다. t with id = textview1

답변

0

스타일이 정의되어 있지 않기 때문에 스타일을 설정할 수 없습니다. 하지만 XML 파일에서 다른 테마를 만들고 런타임시 변경 가능

예 :

setTheme(android.R.style.Theme_Dark); 

그래서 스타일로 테마를 만들고이 방법처럼 사용할

편집 :이 방법

if(condition){ 
    textview.setBackground(Color.Grey); 
    textview.setTextColor(Color.Black); 
}else{ 
    textview.setBackground(Color.Blue); 
    textview.setTextColor(Color.White); 
} 

같은 배경과 텍스트 색상을 설정하거나이 게시물에 답변을 확인하실 수 있습니다

How to change a TextView's style at runtime

+0

내 수정 사항을 참조하십시오. – Lukap

+0

확인해주세요. pdated answer – Pratik

관련 문제