CardView默认背景颜色有问题
CardView
的默认白色背景有问题或者我缺少什么?当我将CardView
填充为普通的未设置的Android UI时,TextView
的白色文本不可读,例如CardView默认背景颜色有问题
有人知道一个很好的解决方案吗?我使用默认的“Theme.AppCompat”主题,其他背景颜色看起来正确。这是Theme.AppCompat中缺少的属性吗?或者我做错了什么?没有手动设置任何值的默认颜色应始终工作或不工作?
编辑:
我现在应用默认的背景色为当前样式到cardview这样的:
TypedArray array = context.getTheme().obtainStyledAttributes(
new int[] { android.R.attr.colorBackground });
card.setCardBackgroundColor(array.getColor(0, 0xFF00FF));
我认为这是一个非常节约“默认”修复至少有在屏幕截图中没有文字颜色问题,但问题仍然是什么应该是这里的最佳做法,以及为什么Cardview无论使用什么主题都具有白色作为默认背景色。
通过这种方式,你可以改变Cardview背景颜色,
RoundRectDrawable backgroundDrawable = new RoundRectDrawable(backgroundColor, cardView.getRadius());
cardView.setBackgroundDrawable(backgroundDrawable);
更好地使用card.setCardBackgroundColor(color);)但是这不是我认为的默认bahaviour的好解决方案。 CardView的默认颜色应该与默认文本颜色相反,至少这就是我所期望的。 – 2014-11-24 11:19:23
不这样做,请使用新的API来设置背景颜色。调用它会在棒棒糖之前崩溃cardview。 – yigit 2014-11-25 01:33:54
尽可能多的Android中CradView其他的东西充满了错误。但是如果你想仔细看看源代码中的llok:https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/view/LayoutInflater.java,特别是方法初始化()。在那里您会看到它应该根据主题背景为背景选择浅色或深色。然而......它没有。欢迎来到臭虫的集合...我的意思是机器人。 – f470071 2017-02-16 14:11:22
更改cardview所在布局的背景颜色。 – 2017-09-13 17:06:52