下面看看第二种方式:在Activity类中进行设置

 

1、先将main.xml改成如下,即去掉android:textColor="@color/red":

 

Xml代码  Android 修改menu字体颜色 android怎么修改字体颜色_xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. android:background="@drawable/white"
  7. >
  8. <TextView
  9. android:id="@+id/tv01"
  10. android:layout_width="fill_parent"
  11. android:layout_height="wrap_content"
  12. android:text="@string/hello"
  13. android:autoLink="all"
  14. />
  15. </LinearLayout>

 2、修改Activity的onCreate方法,这里我的Activity是Study03_01,原始代码如下:

 

 

Java代码  Android 修改menu字体颜色 android怎么修改字体颜色_xml

  1. package
  2.   
  3. import
  4. import
  5.   
  6. public class Study03_01 extends
  7. @Override
  8. public void
  9. super.onCreate(savedInstanceState);  
  10.         setContentView(R.layout.main);  
  11.     }  
  12. }  

 

第一步:获得文本控件TextView,取名为tv

 

第二步:通过TextView的setTextColor方法进行文本颜色的设置,这里可以有3种方式进行设置:

 

第1种:tv.setTextColor(android.graphics.Color.RED);//系统自带的颜色类

 

第2种:tv.setTextColor(0xffff00ff);//0xffff00ff是int类型的数据,分组一下0x|ff|ff00ff,0x是代表颜色整数的标记,ff是表示透明度,ff00ff表示颜色,注意:这里ffff00ff必须是8个的颜色表示,不接受ff00ff这种6个的颜色表示。

 

第3种:tv.setTextColor(this.getResources().getColor(R.color.red));//通过获得资源文件进行设置。根据不同的情况R.color.red也可以是R.string.red或者R.drawable.red,当然前提是需要在相应的配置文件里做相应的配置,如:

<color name="red">#FF0000</color>

<drawable name="red">#FF0000</drawable>

<string name="red">#FF0000</string>

 

 

详细的代码如下:

Java代码  Android 修改menu字体颜色 android怎么修改字体颜色_xml

  1. package
  2.   
  3. import
  4. import
  5. import
  6. import
  7. import
  8.   
  9. public class Study03_01 extends
  10. /** Called when the activity is first created. */
  11. private
  12. @Override
  13. public void
  14. super.onCreate(savedInstanceState);  
  15.         setContentView(R.layout.main);  
  16.           
  17. this.findViewById(R.id.tv01);  
  18.           
  19. //        tv.setTextColor(Color.RED);
  20.           
  21. //        tv.setTextColor(0xff000000);
  22. /* 
  23.         Resources rs = this.getResources();
  24.         tv.setTextColor(rs.getColor(R.drawable.red));
  25.         */
  26.   
  27.     }  
  28. }  

 

注:请切换相应的注释

 

 

通过在Activity类中设置文本颜色,我们可以实现文本颜色的动态化。如果想保持文本颜色静态不变的话,可以直接通过上一篇中讲的通过直接配置即可。