最近写程序就遇到了这么个难题,在TextView 上,正常字体颜色显示是黑色。如果在activity中动态的改变字体颜色(预期目标是字体颜色变成红色),无论如何都是灰显,简单代码如下所示。郁闷了好些时日。
private TextView mTextDisp;
mTextDisp = (TextView) findViewById(R.id.textDisp_mian);
mTextDisp.setTextColor(R.color.red);(使用color.xml文件中的颜色值)
这样写是怎么也变不成红色的,而且程序不报错,不知道朋友们有没有试过。而且debug所走的分支也是正确的。
我就单独写了一个Demo来测试,结果还是灰显。
有的朋友要说,是不是red的颜色值写错了。不是,color中的颜色值配置对着呢。
其实,答案很简单,就错在mTextDisp.setTextColor(R.color.red);这行代码上。
首先,在xml中不要写默认的字体颜色值,即android:textColor="xxx"
其次,在activity中mTextDisp.setTextColor(context.getResources().getColor(R.color.red));(使用color.xml文件中的颜色值)
这样就OK了。或者直接使用Color类中的值:mTextDisp.setTextColor(Color.RED);(使用系统自带的颜色类Color类中的颜色值)
或者直接使用颜色值:mTextDisp.setTextColor(0xffff00ff);//0xffff00ff是int类型的数据,分组一下0x|ff|ff00ff,0x是代表颜色整数的标记,ff是表示透明度,ff00ff表示颜色,注意:这里ffff00ff必须是8个的颜色表示,不接受ff00ff这种6个的颜色表示。
分享到:
相关推荐
总之,动态改变TextView的颜色和大小是Android开发中常见的需求,可以通过`setTextColor()`和`setTextSize()`方法实现。同时,了解如何使用SpannableString和Spanned对象能让你的文本更具表现力。在使用提供的代码...
在Android开发中,有时我们需要为应用的用户界面增添一些视觉上的亮点,比如让TextView中的文字部分呈现出渐变色效果。这不仅可以吸引用户的注意力,也可以使界面更具设计感。本篇文章将详细讲解如何在Android中实现...
总之,通过利用Android的SpannableString和各种Span,我们可以在一个TextView中轻松地实现不同字体大小和颜色的效果,极大地提升了用户体验和界面设计的灵活性。在开发过程中,掌握这类技术对于构建动态且交互性强的...
在提供的文件“android设置TextView中文字不同的字体大小且垂直居中显示”中,可能包含了一个示例代码或详细步骤,可以帮助开发者更深入地理解这一技术。建议查看该文件以获取更多实践指导。记住,实践中学习和掌握...
通过以上的方式,我们可以实现对TextView中特定文字颜色和背景色的动态控制,从而提高UI的交互性和视觉效果。在实际开发中,还需要注意性能优化,避免在大量数据或频繁操作时过度使用Spannable,以免影响应用性能。
在Android开发中,`TextView`是用于展示文本的常用组件,它可以进行丰富的文本格式化和交互操作。在一些场景下,我们可能需要对`TextView`中的特定部分文字进行颜色变化,甚至为这部分文字添加点击事件,以实现更...
在布局XML文件中,将TextView的`android:background`属性设置为刚刚创建的Selector资源。例如: ```xml <TextView android:id="@+id/myTextView" android:layout_width="wrap_content" android:layout_height=...
总之,实现TextView字体颜色渐变显示的方法多样,可以根据项目需求选择适合的方式。无论是通过原生API还是第三方库,都可以达到预期的效果。在实际开发中,注意代码的可读性和性能优化,以提供更好的用户体验。
在这里,我们可以根据需要动态地改变文字颜色、大小、位置等属性,实现文字闪烁或其他动画效果。 3. **使用Canvas和Paint对象**: 在`onDraw()`方法中,我们会使用Canvas对象进行实际的绘图工作,而Paint对象则...
### Android设置TextView中划线效果 在Android应用开发过程中,我们经常会遇到需要为文本添加特殊样式的需求,例如添加下划线、删除线等效果。这些功能可以增强应用的视觉表现力,同时也能够传递出更多的信息含义。...
本篇将详细介绍如何设置TextView的部分文字颜色和背景,使其更加醒目。 首先,我们可以使用`SpannableString`和`SpannableStringBuilder`来实现这个功能。这两个类是可变的字符串,可以添加不同的样式,如颜色、...
本文实例讲述了Android编程中TextView字体属性设置方法(大小、字体、下划线、背景色)。分享给大家供大家参考,具体如下: import android.content.Context; import android.graphics.Color; import android.text....
本文将详细讲解如何在Android中实现TextView字体颜色的设置,包括两种主要方法:通过XML配置文件和在Activity中动态设置。 **一、通过XML配置文件设置** 1. **创建XML资源文件** 在`res`目录下,通常有`values`子...
在字体颜色的Selector中,`android:color`用于设置字体颜色。 接下来,在布局文件中引用这些Selector,例如在一个LinearLayout中添加一个TextView: ```xml android:layout_width="match_parent" android:...
这样,我们就可以在运行时通过调用`setDynamicTextColor()`方法来改变TextView的文字颜色了。 为了更进一步,我们还可以为每个字符分别设置颜色。这需要我们重写`onDraw()`方法,使用`Canvas`和`Paint`对象逐个绘制...
2. **避免动态设置属性**:在`onCreate()`之外设置`TextView`属性,否则可能影响性能。 3. **合理使用LayoutParams**:确保`TextView`的宽高设置合理,避免不必要的重绘。 4. **限制最大行数**:如果文本可能很长,...
TextView有`android:textColor`属性用于设置文本颜色,`android:textSize`属性用于设定文本大小。然而,这些属性通常在XML布局文件中静态定义。在运行时,我们可以使用以下方法动态地修改它们: 1. **改变文本颜色*...