Android除了能夠改變字型大小,還能改變字型樣式。方法非常簡單只需要將相應的字型複製到assets目錄邊可以實現。
步驟如下:
1.在準備字型,在windows/fonts隨便拷貝一個字型將其粘貼到eclipse相應項目的assets目錄中,assets目錄可以存放任何資源檔,以視區別建立一個fonts目錄用與存放剛才複製的字型。
2.編輯main.xml,添加一個TextView和兩個按鈕,分別設定ID
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/tvText" android:id="@+id/tvText"/><Button android:layout_width="wrap_content" android:id="@+id/btnChangeFontStyle" android:layout_height="wrap_content" android:text="@string/btnChangeStyle_Text"></Button><Button android:layout_width="wrap_content" android:id="@+id/btnChangeFontSize" android:layout_height="wrap_content" android:text="@string/btnFontSize_Text"></Button></LinearLayout>
3.編寫相應改變字型和大小代碼
package gphone.ex03_13;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.graphics.Typeface;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.TextView;public class EX03_13 extends Activity {TextView tvText=null;Button btnChangeFontStyle=null;Button btnChangeFontSize=null; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tvText=(TextView)findViewById(R.id.tvText); btnChangeFontStyle=(Button)findViewById(R.id.btnChangeFontStyle); btnChangeFontSize=(Button)findViewById(R.id.btnChangeFontSize); btnChangeFontStyle.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stubtvText.setTypeface(Typeface.createFromAsset(getAssets(), "fonts/STCAIYUN.TTF"));}}); btnChangeFontSize.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {// TODO Auto-generated method stub// TODO Auto-generated method stubtvText.setTextSize(50);}}); }}