当我想设置自定义颜色时,CardBackgroundColor 保持灰色,而默认颜色工作正常
CardBackgroundColor remains Grey when I want to set a custom color, whereas default colors works fine
当我想设置自定义颜色时,CardBackgroundColor 保持灰色,而默认颜色可以正常工作。
例如,Card.setCardBackgroundColor(R.color."customcolor") 不设置自定义颜色。颜色为灰色,而 Card.setCardBackgroundColor(Color.RED) 效果很好。
我试过:
- 获取没有 alpha 的颜色
- 设置为 0dp 海拔
- Card.setCardBackgroundColor(颜色."customcolor")
没有结果。
编辑:
Card.setCardBackgroundColor(Color.parseColor("#FFFFFFFF")) 有效。但我必须对颜色进行硬编码。有更好的方法吗?
嘿嘿,
你必须从这样的资源中获取颜色
Card.setCardBackgroundColor(getResources().getColor(R.color.'your color'));
编辑
当您从适配器获取上下文时,
Card.setCardBackgroundColor(context.getResources().getColor(R.color.'your color'));
效果很好!!
Card.setCardBackgroundColor 方法将颜色作为参数而不是颜色资源 ID,因此在您提供 ID 时失败。
所以正确使用颜色资源的方法如下。
Card.setCardBackgroundColor(ContextCompat.getColor(context, R.color.your_color));
当我想设置自定义颜色时,CardBackgroundColor 保持灰色,而默认颜色可以正常工作。
例如,Card.setCardBackgroundColor(R.color."customcolor") 不设置自定义颜色。颜色为灰色,而 Card.setCardBackgroundColor(Color.RED) 效果很好。
我试过:
- 获取没有 alpha 的颜色
- 设置为 0dp 海拔
- Card.setCardBackgroundColor(颜色."customcolor")
没有结果。
编辑:
Card.setCardBackgroundColor(Color.parseColor("#FFFFFFFF")) 有效。但我必须对颜色进行硬编码。有更好的方法吗?
嘿嘿,
你必须从这样的资源中获取颜色
Card.setCardBackgroundColor(getResources().getColor(R.color.'your color'));
编辑
当您从适配器获取上下文时,
Card.setCardBackgroundColor(context.getResources().getColor(R.color.'your color'));
效果很好!!
Card.setCardBackgroundColor 方法将颜色作为参数而不是颜色资源 ID,因此在您提供 ID 时失败。
所以正确使用颜色资源的方法如下。
Card.setCardBackgroundColor(ContextCompat.getColor(context, R.color.your_color));