【发布时间】:2012-01-18 07:56:28
【问题描述】:
如何以编程方式将文本视图的文本颜色设置为 #bdbdbd?
【问题讨论】:
-
关于在代码中调整 UI 的说明,请考虑在设计时查看 UI 并将运行时更改降至最低的优势。
标签: android textview background-color
如何以编程方式将文本视图的文本颜色设置为 #bdbdbd?
【问题讨论】:
标签: android textview background-color
使用,..
Color.parseColor("#bdbdbd");
喜欢,
mTextView.setTextColor(Color.parseColor("#bdbdbd"));
或者如果您在资源的color.xml 文件中定义了颜色代码而不是
(来自 API >= 23)
mTextView.setTextColor(ContextCompat.getColor(context, R.color.<name_of_color>));
(对于 API
mTextView.setTextColor(getResources().getColor(R.color.<name_of_color>));
【讨论】:
0xFFBDBDBD?
TextView tt;
int color = Integer.parseInt("bdbdbd", 16)+0xFF000000;
tt.setTextColor(color);
还有
tt.setBackgroundColor(Integer.parseInt("d4d446", 16)+0xFF000000);
还有
tt.setBackgroundColor(Color.parseColor("#d4d446"));
见:
【讨论】:
yourTextView.setTextColor(color);
或者,在你的情况下:yourTextView.setTextColor(0xffbdbdbd);
【讨论】:
0xff 是什么意思? setTextColor(0xffbdbdbd) 和 setTextColor(Color.parseColor("#bdbdbd")) 的区别是什么?
parseColor时会解析为相同的整数。
很好的答案。添加 one 以从 Android 资源 xml 加载颜色,但仍以编程方式对其进行设置:
textView.setTextColor(getResources().getColor(R.color.some_color));
请注意,从 API 23 开始,getResources().getColor() 已被弃用。改为使用:
textView.setTextColor(ContextCompat.getColor(context, R.color.some_color));
所需颜色在 xml 中定义为:
<resources>
<color name="some_color">#bdbdbd</color>
</resources>
更新:
此方法在 API 级别 23 中已弃用。使用 getColor(int, Theme) 反而。
检查this。
【讨论】:
tv.setTextColor(color.holo_green_light)。文本显示为不可见。所以我将颜色设置为 XML 中的资源,例如 @android:color/holo_green_light,并以编程方式设置它。