サポートライブラリのスナックバーのテキストの色をandroid:textColor以外に設定するにはどうすればよいですか?
そこで、デザインサポートライブラリで新しいスナックバーを使い始めましたが、テーマで「android:textColor」を定義すると、スナックバーのテキストの色に適用されることがわかりました。プライマリテキストの色が暗い場合、これは明らかに問題です。 これを回避する方法を知っている人や、テキストに色を付ける方法についてのアドバイスはありますか? 2017年1月の編集:(回答後) 以下に問題を修正するためのカスタムソリューションがいくつかありますが、スナックバーのテーマを設定する正しい方法を提供することはおそらく良いことです。 まず、おそらくandroid:textColorテーマで何も定義するべきではありません(テーマを使用する対象の範囲を本当に理解している場合を除きます)。これにより、基本的に、テーマに接続するすべてのビューのテキストの色が設定されます。デフォルトではないビューのテキストの色を定義する場合android:primaryTextColorは、カスタムビューでその属性を使用して参照します。 ただし、テーマをSnackbarに適用する場合は、サードパーティのマテリアルドキュメントからこの品質ガイドを参照してください:http : //www.materialdoc.com/snackbar/(プログラムによるテーマの実装に従って、XMLスタイルに依存しないようにしてください) 参考のため: // create instance Snackbar snackbar = Snackbar.make(view, text, duration); // set action button color snackbar.setActionTextColor(getResources().getColor(R.color.indigo)); // get snackbar view View snackbarView = snackbar.getView(); // change snackbar text color int snackbarTextId = android.support.design.R.id.snackbar_text; TextView textView = (TextView)snackbarView.findViewById(snackbarTextId); textView.setTextColor(getResources().getColor(R.color.indigo)); // change snackbar background …