首页 > 代码库 > TextView 使用自定义字体并高亮显示

TextView 使用自定义字体并高亮显示

尊重原创:http://blog.csdn.net/yuanzeyao/article/details/40478815

现在很多应用中喜欢使用自定义字体,今天我就来实现在TextView中使用自定义字体,并设置高亮,显示效果如下:



定义LedTextView.java

/**
 * 高亮显示的TextView
 * com.led.demo.LedTextView
 * @author yuanzeyao <br/>
 * create at 2014年10月26日 下午6:46:05
 */
public class LedTextView extends TextView
{
  private static final String TAG = "LedTextView";
  
  public LedTextView(Context context)
  {
    super(context);
    init(context);
  }
  
  public LedTextView(Context context, AttributeSet attrs)
  {
    super(context, attrs);
    init(context);
  }

  public LedTextView(Context context, AttributeSet attrs, int defStyle)
  {
    super(context, attrs, defStyle);
    init(context);
  }
  
  private void init(Context context)
  {
    //字体资源放入assets文件夹中
    AssetManager am=context.getAssets();
    Typeface font=Typeface.createFromAsset(am, "fonts/digital-7.ttf");
    setTypeface(font);
  }

在布局文件中引用LedTextView

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:background="@android:color/black"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <com.led.demo.LedTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#00ff00"
        android:text="12:00:00"
        android:shadowColor="#00ff00"
        android:shadowDx="0"
        android:shadowDy="0"
        android:textSize="20sp" 
        />

</RelativeLayout>

设置完毕,即可显示上面的效果

TextView 使用自定义字体并高亮显示