2013-08-03 2 views
21

어떻게 내 안드로이드 애플 리케이션의 배경색을 설정합니까? 시도 할 때 :배경색 설정 : Android

LinearLayout li=(LinearLayout)findViewById(R.id.myLayout); 
li.setBackgroundColor(Color.parseColor("#rrggbb")); 

내 앱이 항상 중단됩니다. 누군가 나를 도울 수 있습니까? 감사합니다

+0

왜 충돌이 발생합니까? logcat은 무엇을 말합니까? 나는 그것이 다른 것, 예를 들어,'setContentView' 메서드를 사용하여 액티비티에 대한 레이아웃을 설정했기 때문이라고 생각한다. –

+1

실제로'Color.parseColor ("# rrggbb")'를 사용합니까? 거기에 16 진수를 사용해야합니다 –

답변

38
Color.parseColor("#rrggbb") 

대신 #rrggbb의 RR는 F에 대한 16 진수 값 0을 사용한다, GG 및 BB :

예컨대 문서에서 Color.parseColor("#000000") 또는 Source

Color.parseColor("#FFFFFF") :

공공 정적 INT parseColor (문자열 colorString) :

가 컬러 문자열을 구문 분석하고, 해당 색상-INT를 반환합니다. 문자열을 구문 분석 할 수 없으면 IllegalArgumentException 예외가 발생합니다. 지원되는 형식은 #RRGGBB #AARRGGBB '빨강', '파랑', '녹색', '검정', '흰색', '회색', '시안', '자홍색', '노란색', '밝은 회색' '어두운 회색', '밝은 회색', '어두운 회색', '아쿠아', '밝은 색', '석회', '밤색' '청록색'

그래서 난 당신이 #rrggbb를 사용하는 경우 당신이 당신의 로그 캣에 는 IllegalArgumentException을 받고 있다고 생각

Source

대안 :

Color mColor = new Color(); 
mColor.red(redvalue); 
mColor.green(greenvalue); 
mColor.blue(bluevalue); 
li.setBackgroundColor(mColor); 

Source

6

이 시도 :

li.setBackgroundColor(android.R.color.red); //or which ever color do you want 

편집 : 게시 로그 캣 파일도 도움이 될 것이다.

+0

mainLayout.setBackgroundColor (getResources(). getColor (android.R.color.black))); – fullMoon

13

이 질문은 이전이지만 너무 다른 사람을 위해 도움이 될 수 있습니다. 코드의 옆에있는 색상 선택기를 사용하여 다음 #fff 입력 단순히 신속하게 AS의 최신 버전에 색상을 선택에 그런데

li.setBackgroundColor(getResources().getColor(R.color.blue)); 

    or 

    li.setBackgroundColor(getResources().getColor(android.R.color.red)); 

    or 

    li.setBackgroundColor(Color.rgb(226, 11, 11)); 


    or 
    li.setBackgroundColor(Color.RED) 
0

, 좋은 팁을하고 :

이 시도 원하는 것을 선택하십시오. 모든 색상 16 진수를 기억하는 것보다 빠르고 쉽습니다. 예 :

android:background="#fff"