2016-06-26 9 views
0

グッド午後に合わせスナックバーのアクション、

私はスナックバーで働いていると私は(UNDOのような)acitonを配置しようが、テキストが画面の右側に整列されていません。

は、結果は私が必要:

enter image description here

私が持っている結果:あなたが見ることができるように私が必要と

enter image description here

は、 "UNDO" アクションは、右に整列されていません。ここで

は私のスナックバーコードです:

Snackbar snackbar = Snackbar.make(mMainContent, "Message deleted", Snackbar.LENGTH_LONG) 
         .setAction("UNDO", new View.OnClickListener() { 
          @Override 
          //Todo: Click on "UNDO" 
          public void onClick(View view) { 
          } 
         }); 

       snackbar.setActionTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white)); 

       View snackbarView = snackbar.getView(); 
       snackbarView.setBackgroundColor(ContextCompat.getColor(getApplicationContext(), R.color.colorAccent)); 
       snackbar.show(); 

誰かが私を助けることができますか?

ありがとうございました!

+0

を下回っています。 – Ironman

答えて

0

Custom snackbar

独自のスナックバーのレイアウトを作成してコア部分は `Documentation`に方法がないので、あなたがこのデフォルトを好むする必要が

<!-- language: lang-java --> 

// Create the Snackbar 
Snackbar snackbar = Snackbar.make(containerLayout, "", Snackbar.LENGTH_LONG); 
// Get the Snackbar's layout view 
Snackbar.SnackbarLayout layout = (Snackbar.SnackbarLayout) snackbar.getView(); 
// Hide the text 
TextView textView = (TextView) layout.findViewById(android.support.design.R.id.snackbar_text); 
textView.setVisibility(View.INVISIBLE); 

// Inflate our custom view 
View snackView = mInflater.inflate(R.layout.my_snackbar, null); 
// Configure the view 
ImageView imageView = (ImageView) snackView.findViewById(R.id.image); 
imageView.setImageBitmap(image); 
TextView textViewTop = (TextView) snackView.findViewById(R.id.text); 
textViewTop.setText(text); 
textViewTop.setTextColor(Color.WHITE); 

// Add the view to the Snackbar's layout 
layout.addView(snackView, 0); 
// Show the Snackbar 
snackbar.show();