Kub*_*boå 14 android material-design android-design-library android-snackbar androiddesignsupport
试用新的设计支持库,我添加了一个小吃吧; 但与其主背景不同,文本区域未使用默认值着色#323232.相反,它看起来像这样.它似乎从android:background我自定义主题中定义的值中获取颜色styles.xml,如下所示:
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
...
<item name="android:background">#4f4f5e</item>
...
</style>
Run Code Online (Sandbox Code Playgroud)
如果我试着用它强行着色
View snackbarView = snackbar.getView();
snackbarView.setBackgroundColor(Color.YELLOW);
Run Code Online (Sandbox Code Playgroud)
它只影响主背景,像这样,文本背景仍然被自定义主题着色.有没有办法保持我的自定义主题,并有一个标准的小吃吧?谢谢!
agi*_*llo 18
要更改Snackbar的背景颜色,您可以从代码中执行以下操作:
Snackbar snack = Snackbar.make(...);
ViewGroup group = (ViewGroup) snack.getView();
group.setBackgroundColor(ContextCompat.getColor(getContext(), R.color.red));
snack.show();
Run Code Online (Sandbox Code Playgroud)
您可以使用Snackbar的默认颜色代替红色:#323232
.setBackgroundColor 允许您更改快餐栏的背景颜色
msnackBar.setBackgroundColor(Color.parseColor("#009688"));
Run Code Online (Sandbox Code Playgroud)
要么
msnackBar.setBackgroundColor(getResources().getColor(R.color.BLUE)););
Run Code Online (Sandbox Code Playgroud)
这是使用设计支持库使用snackbar的完整教程.
小智 7
小吃店包含一个TextView,所以你需要改变两者的背景颜色,就像你已经做的那样改变小吃吧,然后像这样改变TextView:
View snackbarView = snackbar.getView();
TextView textView = (TextView)snackbarView.findViewById(android.support.design.R.id.snackbar_text);
textView.setBackgroundColor(Color.YELLOW);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12862 次 |
| 最近记录: |