2016-11-28 1 views
0

Androidアプリのスナップバーは、ACtivityのビューとは別の表示ができますか?私の活動は、イメージの背景を持つレイアウトにあります。スナックバーがレイアウトの背景を取得するように見えるので、私はそのアクティビティでスナックバーを表示するとほとんど何も読むことができません。レイアウトにイメージの背景があるアクティビティに黒い背景を持つスナックバーを持つことができる方法はありますか?アンドロイドのスナックバービューは背景画像のため影響を受けています

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.Itは今働いています..私は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がの。プロパティを設定する前に初期化する必要があります。

関連する問題