2016-11-28 1 views
0

Android 앱의 스낵 바가 ACtivity보기와 다른보기가 가능합니까? 내 활동은 이미지 배경이있는 레이아웃에 있습니다. 스낵바가 레이아웃 배경을 얻는 것처럼 나는 그 활동에 스낵바를 표시 할 때 나는 아무것도 읽을 수 없다. 레이아웃에 이미지 배경이있는 활동에서 검정색 배경으로 스낵바를 가질 수있는 방법이 있습니까?안드로이드의 Snackbar보기가 배경 이미지로 인해 영향을 받음

if (!email.matches(emailPattern)) 
     { 
      Snackbar snackbar = Snackbar 
        .make(view, "Invalid email address.Please enter a valid email address" , Snackbar.LENGTH_SHORT); 

      snackbar.show(); 

      return; 
     } 
+2

'snackbar.getView(). setBackgroundColor (Color.parseColor ("# hexcolor"))'이것을 시도하십시오. – AlphaQ

+0

@ AlphaQ .. 다음 코드를 시도 : Snackbar snackbar1 = null; snackbar1.getView(). setBackgroundColor (Color.parseColor ("# D3D3D3")); snackbar1.setText ("잘못된 이메일 주소입니다. 유효한 이메일 주소를 입력하십시오"); snackbar1.show(); 하지만 응용 프로그램이 –

+0

@ AlphaQ로 추락했습니다. 이제 작동했습니다. snackbar.getView()를 추가했습니다. setBackgroundColor (Color.parseColor ("# D3D3D3")); 질문에 게시 된 코드에. 그것은 매력처럼 작동했습니다! –

답변

1

는 여기 수정 된 코드를 추가 해요 :

if (!email.matches(emailPattern)) 
{ 
Snackbar snackbar = Snackbar.make(view, 
"Invalid email address.Please enter a valid email address" , Snackbar.LENGTH_SHORT); 
snackbar.getView().setBackgroundColor(Color.parseColor("#hexcolor")); 
snackbar.show(); 
return; 
} 

당신은 코멘트 섹션에서 언급 한 것처럼, 앱 충돌 때문에 snackbar 변수에 의해 생성 된 NullPointerException이의. 속성을 설정하기 전에 초기화해야합니다.

관련 문제