我已遵循有关如何在我的应用中实现材料组件的准则,并将Theme.MaterialComponents.NoActionBar
分配给了AppTheme
,在我的主要活动中,它具有material.io中提到的CoordinatorLayout最好地显示Snackbar,但我得到了这个结果。
编辑:我尝试过更改样式表中Snackbar的背景颜色并设置了textViewStyle
,但这些选项不起作用
如果需要更多信息,我将编辑并添加缺少的信息。
答案 0 :(得分:2)
使用此代码:
snackBarView.getView().setBackgrondColor(ContextCompat.getColor(getActivity(),R.color.Blue));
答案 1 :(得分:0)
您可以像这样更改文本和背景颜色。
Snackbar snackbar = Snackbar
.make(view, "Hello", Snackbar.LENGTH_SHORT);
View sbView = snackbar.getView();
sbView.setBackgroundColor(Color.RED);
TextView textView = sbView.findViewById(android.support.design.R.id.snackbar_text);
textView.setTextColor(Color.WHITE);
textView.setTypeface(FontHelper.getFont(Fonts.MULI_SEMI_BOLD));
snackbar.show();
更改小吃店背景颜色的替代方法,请参见链接
https://stackoverflow.com/a/54484438/7108030
如果您仍然有疑问,请分享您的示例代码,如果此答案有帮助,请给出积极的反馈。
答案 2 :(得分:0)
我发现了错误,因为存在<item name="android:background">@color/white</item>
覆盖TextView背景色,甚至以小部件的指定样式指定android:background也不会覆盖主AppTheme中指定的主要背景