Android TextView系列--第二篇

本篇文章包括:

1 发光的字体
    1.1 基础LinearGradient
    1.2 ObjectAnimator动画基础知识
    1.3 发光字体实现

1 发光的字体:

1.1基础LinearGradient:
效果图:

这里写图片描述

    代码如下:
public class MyLinearGradientView extends View {

    private LinearGradient linearGradientClamp,linearGradientMirror,linearGradientRepeat;

    public MyLinearGradientView(Context context) {
        super(context);
        /**
         * 第1,2个参数,代表渐变起点;
         * 第3,4个参数,代表渐变终点;
         * 第5个参数,代表渐变颜色;
         * 弟6个参数,每个颜色渐变位置,可以为空
         * 第七个参数平铺模式:CLAMP:复制最后一种颜色进行着色,MIRROR:以镜像方式须知渲染图,REPEAT:以平铺方式复制渲染图。
         */
        linearGradientClamp  =new LinearGradient(0,0,50,50,new int[]{Color.GRAY,Color.YELLOW},null, Shader.TileMode.CLAMP);
        linearGradientMirror  =new LinearGradient(0,0,50,50,new int[]{Color.GRAY,Color.YELLOW},null, Shader.TileMode.MIRROR);
        linearGradientRepeat  =new LinearGradient(0,0,50,50,new int[]{Color.GRAY,Color.YELLOW},null, Shader.TileMode.REPEAT);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        Paint paint = new Paint();
        paint.setTextSize(40);
        paint.setColor(Color.BLACK);

        //设置渐变方式
        paint.setShader(linearGradientClamp);
        canvas.drawRect(0, 0, 400, 400, paint);
        canvas.drawText("CLAMP", 0, 450, paint);

        //Mirror模式绘制
        paint.setShader(linearGradientMirror);
        canvas.drawRect(0, 450, 400, 850, paint);
        canvas.drawText("MIRROR", 0, 900, paint);
        //Repeat模式绘制
        paint.setShader(linearGradientRepeat);
        canvas.drawRect(0,900,400,1250,paint);
        canvas.drawText("REPEAT",0,1300,paint);

    }
}

1.2 ObjectAnimator动画基础知识

/**
*TextView:使用动画的组件
*gradientX:横向渐变
*fromX:x轴起始坐标
*toX:x轴目标坐标
*/
ObjectAnimator animator = ObjectAnimator.ofFloat(TextView, "gradientX", fromX, toX);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值