我使用Google Design库(23.1.0)来显示零食栏。我的小吃店代码看起来像:
Snackbar snackbar = Snackbar.make(getView(), "Deleted", Snackbar.LENGTH_LONG);
snackbar.setActionTextColor(getResources().getColor(R.color.accent_color));
snackbar.setAction(R.string.undo, //anonymous class omitted);
snackbar.setCallback(//anonymous class omitted);
snackbar.show();
正在创建和显示小吃店。操作标签,操作颜色和所有侦听器按预期工作。唯一的问题就是消息"已删除"没有显示。如果我使用调试器并停止执行:snackbar.show(),我可以看到里面的snackbar> mView> mMessageView有一个名为mText的字段,它的值为" Deleted"。然而,我看不到小吃店上的消息。我已经尝试过使用字符串consts和资源id。
更重要的是,我尝试在清洁项目中使用非常相似的代码并且它有效。可能是什么原因?
答案 0 :(得分:1)
哦,看起来文字颜色和背景真的一样。我已经取代了:
select year, month, total_prints,
(total_prints - lag(total_prints) over (order by year, month)) as diff
from t;
使用:
Snackbar snackbar = Snackbar.make(getView(), "Deleted", Snackbar.LENGTH_LONG);
现在我可以看到文字了。
更新
经过一番调查后,小吃栏文本的默认颜色取自theme.xml。我的项目的情况是textColor的值设置为#313131,快餐栏的背景是#323232。无法注意到。
答案 1 :(得分:0)
文字的颜色可能有问题(R.color.accent_color)。也许文字颜色作为背景颜色?
尝试不使用此选项:
Snackbar snackbar = Snackbar.make(getView(), "Deleted", Snackbar.LENGTH_LONG);
snackbar.setAction(R.string.undo, //anonymous class omitted);
snackbar.setCallback(//anonymous class omitted);
snackbar.show();