android 设置特殊字体

为了满足UI的“爱好”,研究下android中第三方字体的使用,纯技术研究,如有侵权,纯属巧合【笑哭】
首先从百度搜索下载到字体文件,拷贝到assets/fonts目录下

在使用字体的Textview调用方法setTypeface()

Typeface tf = Typeface.createFromAsset(mContext.getAssets(), "fonts/HelveticaNeueDeskInterface UltraLight.ttf");
holder.tvTemp.setTypeface(tf);

效果图,其中温度(23)用到了该字体

  • 实现一个Textview中不同字体大小的效果,如下图

private DecimalFormat decimalFormatTSetTemp = new DecimalFormat("00.0");String setTempStr = decimalFormatTSetTemp.format(16);SpannableString spannableString = new SpannableString(setTempStr);spannableString.setSpan(new RelativeSizeSpan(1), 0, 2, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);spannableString.setSpan(new RelativeSizeSpan(0.5f), 2, 4, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);textview.setText(spannableString);

android 设置特殊字体

为了满足UI的“爱好”,研究下android中第三方字体的使用,纯技术研究,如有侵权,纯属巧合【笑哭】
首先从百度搜索下载到字体文件,拷贝到assets/fonts目录下

在使用字体的Textview调用方法setTypeface()

Typeface tf = Typeface.createFromAsset(mContext.getAssets(), "fonts/HelveticaNeueDeskInterface UltraLight.ttf");
holder.tvTemp.setTypeface(tf);

效果图,其中温度(23)用到了该字体

  • 实现一个Textview中不同字体大小的效果,如下图

private DecimalFormat decimalFormatTSetTemp = new DecimalFormat("00.0");String setTempStr = decimalFormatTSetTemp.format(16);SpannableString spannableString = new SpannableString(setTempStr);spannableString.setSpan(new RelativeSizeSpan(1), 0, 2, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);spannableString.setSpan(new RelativeSizeSpan(0.5f), 2, 4, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);textview.setText(spannableString);