android 设置控件的颜色,字体
1.用代码设置控件的颜色:
int b = getResources().getColor(R.drawable.blue);//得到配置文件里的颜色
mButton.setTextColor(b);
2.设置空间的字体:
方式一:mText.setTypeface(Typeface.createFromAsset(getAssets(),"fonts/HandmadeTypewriter.ttf"));//设置字体
注意:1.保证文件一定是ttf格式;2.放到assets/fonts目录下;3.如果找不到相应的字体不会报错,只是在运行的时候显示不出来
方式二: fontButton.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC));//用内部支持的方式设置
package com.oyzz.ch3_6; import android.app.Activity; /*必须引用graphics.Color才能使用Color.*的对象*/ import android.graphics.Color; import android.graphics.Typeface; import android.os.Bundle; import android.view.View; /*必须引用 widget.Button才能声明使用Button对象*/ import android.widget.Button; /*必须引用 widget.TextView才能声明使用TestView对象*/ import android.widget.TextView; public class Ch3_6 extends Activity { private Button mButton; private TextView mText; private int[] mColors; private int colornum; private Button fontButton; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); /*通过findViewById构造器来使用main.xml与string.xml 中button与textView的参数*/ mButton=(Button) findViewById(R.id.mybutton); mText= (TextView) findViewById(R.id.mytext); fontButton=(Button) findViewById(R.id.mybutton1); /*声明并构造一整数array来存储欲使用的文字颜色*/ mColors = new int[] { Color.BLACK, Color.RED, Color.BLUE, Color.GREEN, Color.MAGENTA, Color.YELLOW }; colornum=0; //得到color.xml文件里的颜色 int b = getResources().getColor(R.drawable.blue);//得到配置文件里的颜色 mButton.setTextColor(b); /*使用setOnClickListener让按钮聆听事件*/ mButton.setOnClickListener(new View.OnClickListener() { /*使用onClick让用户点下按钮来驱动变动文字颜色*/ public void onClick(View v) { if (colornum < mColors.length) { mText.setTextColor(mColors[colornum]); colornum++; } else colornum=0; } }); fontButton.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { mText.setTypeface(Typeface.createFromAsset(getAssets(),"fonts/HandmadeTypewriter.ttf"));//设置字体 fontButton.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC));//用内部支持的方式设置 } }); } } main.xml: <?xml version="1.0" encoding="utf-8"?> <!-- Layout使用白色的背景 --> <LinearLayout android:id="@+id/widget27" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/white" xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" > <!-- 文字使用mytext作為id使用string.xml中 的textview_str參數 預設文字顏色為按灰色 --> <TextView android:id="@+id/mytext" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/textview_str" android:textColor="@drawable/darkgray" > </TextView> <!-- 按鈕以mybutton作為id使用string.xml中 的button_str參數 --> <Button android:id="@+id/mybutton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button_str" > </Button> <Button android:id="@+id/mybutton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="字体" > </Button> </LinearLayout> color.xml: <?xml version="1.0" encoding="utf-8"?> <resources> <drawable name="darkgray">#404040ff</drawable> <drawable name="black">#000</drawable> <drawable name="red">#ff00ff</drawable> <drawable name="green">#0ff0ff</drawable> <drawable name="lightgray">#c0c0c0ff</drawable> <drawable name="white">#ffffffff</drawable> <drawable name="yellow">#ffFF33ff</drawable> <drawable name="blue">#00ffff</drawable> <drawable name="gray">#808080ff</drawable> <drawable name="magenta">#ff6699ff</drawable> <drawable name="cyan">#66ffffff</drawable> </resources> strings.xml: <?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, Ex03_13</string> <string name="app_name">Ex03_13</string> <string name="textview_str">转吧七彩霓虹灯</string> <string name="button_str">按我</string> </resources>