关闭

TextView的自定义字体

255人阅读 评论(0) 收藏 举报
分类:

这里有两种实现方法:

(1)这种实现方法比较简单。但是只能设置个别的字体,结果可能不是你想要的。

winp.setText("Typeface.DEFAULT_BOLD");
		winp.setTypeface(Typeface.DEFAULT_BOLD);
DEFAULT_BOLD是系统自带,当然系统自带的也有好几种,你可以选择自己需要的。

(2)这种实现方法稍稍复杂,但结果是不错的。

可以使用setTypeface(Typeface)方法来设置文本框内文本的字体,而android的Typeface又使用TTF字体文件来设置字体。所以,我们可以在程序中放入TTF字体文件,在程序中使用Typeface来设置字体:

第一步,在assets目录下新建fonts目录,把TTF字体文件放到这里。

第二步,程序中调用:

<pre name="code" class="html">final SharedPreferences prefs =PreferenceManager.getDefaultSharedPreferences(getActivity());
wind = (TextView) view.findViewById(R.id.wind);
wind.setText(prefs.getString("wind", ""));
AssetManager mgr1=wind.getContext().getAssets();
wind.setTypeface(Typeface.createFromAsset(mgr1, "font/FZSTK.TTF"));


看到上面的getActivity()方法,所以这个适用于Fragment中。

那么如果在Activty中,我们该怎么写呢?

代码如下:

// 得到TextView控件对象
TextView textView = (TextView) findViewById(R.id.custom);
// 将字体文件保存在assets/fonts/目录下,www.linuxidc.com创建Typeface对象
Typeface typeFace = Typeface.createFromAsset(getAssets(),"font/STXINGKA.TTF");
// 应用字体
textView.setTypeface(typeFace);






在这里可以实现你想要的任何字体。效果甚好!

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:46044次
    • 积分:1392
    • 等级:
    • 排名:千里之外
    • 原创:87篇
    • 转载:15篇
    • 译文:0篇
    • 评论:4条
    博客专栏
    算法

    文章:0篇

    阅读:0
    最新评论