1. 程式人生 > >Android TextView字型設定

Android TextView字型設定

字型資源
這裡寫圖片描述
程式碼要點

Typeface mtypeface=Typeface.createFromAsset(getAssets(),"huawencaiyunv.TTF");
 mTextViewContent.setTypeface(mtypeface);

注意:
1、這裡需要注意的是下載的字型是中文名字需要自己改成英文的,不然會報錯。
2、在Eclipse中我們可以直接將字型資源放在assets下面,在Android Studio中則需要我們將其放在src/main/下面,這裡記得修改為英文名。
這裡寫圖片描述
3、通過這種方式改變字型,會佔用應用記憶體,因此一般不推薦使用這種方式,通過下圖可以看到,實際上TextView本身自帶有幾種字型。
這裡寫圖片描述


程式碼比較簡單,不解釋
以後如果需要進行使用的話可以進行封裝後再使用

public class Test extends AppCompatActivity{
    private Button mButtonTextChange;
    private TextView mTextViewContent;
    private StringBuilder mStrContent;
    private int typecount=0;
    Typeface mTypeface;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super
.onCreate(savedInstanceState); setContentView(R.layout.textchange); mButtonTextChange= (Button) findViewById(R.id.button_change); mTextViewContent= (TextView) findViewById(R.id.textview); mStrContent=new StringBuilder(); //兩個tab鍵,用於段落開頭 mStrContent.append(" "
).append("生命中有很多東西,能忘掉的叫過去,忘不掉的叫記憶。一個人的寂寞,有時候,很難隱藏得太久,時間太久了,人就會變得沉默,那時候,有些往日的情懷,就找不回來了。 或許,當一段不知疲倦的旅途結束,只有站在終點的人,才會感覺到累。其實我一直都明白,能一直和一人做伴,實屬不易。" ).append("\n").append(" ").append("要有最樸素的夢想,即使明天天寒地凍,路遠馬亡。"); mTextViewContent.setText(mStrContent.toString()); mTypeface=Typeface.createFromAsset(getAssets(),"fangzhengzhunyuan.TTF"); mTextViewContent.setTypeface(mTypeface); mButtonTextChange.setText("方正準圓"); mButtonTextChange.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //根據按鈕按下次數,迴圈顯示幾種字型。 typecount++; switch (typecount){ case 0: Typeface mtypeface=Typeface.createFromAsset(getAssets(),"huawencaiyunv.TTF"); mTextViewContent.setTypeface(mtypeface); mButtonTextChange.setText("華文彩雲"); break; case 1: Typeface mtypeface1=Typeface.createFromAsset(getAssets(),"huawenxingkai.ttf"); mTextViewContent.setTypeface(mtypeface1); mButtonTextChange.setText("華文行楷"); break; case 2: Typeface mtypeface2=Typeface.createFromAsset(getAssets(),"huawenxinsong.ttf"); mTextViewContent.setTypeface(mtypeface2); mButtonTextChange.setText("華文新宋"); break; case 3: Typeface mtypeface3=Typeface.createFromAsset(getAssets(),"fangzhengzhunyuan.TTF"); mTextViewContent.setTypeface(mtypeface3); mButtonTextChange.setText("方正準圓"); typecount=0; break; } } }); } }