大佬教程收集整理的这篇文章主要介绍了Android自定义View实现闪耀字体效果,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
本文实例为大家分享了闪耀字体效果的具体代码,供大家参考,具体内容如下
import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.LinearGradient; import android.graphics.Matrix; import android.graphics.Paint; import android.graphics.Shader; import android.util.AttributeSet; import android.widget.TextView; /** * 闪耀字体 */ public class ShiningFontView extends TextView { privatE int mViewWidth; private Paint mPaint; private LinearGradient mLinearGradient; private Matrix mGradientMatrix; privatE int mTranslate; public ShiningFontView(Context context) { super(context); } public ShiningFontView(Context context,AttributeSet attrs) { super(context,attrs); } public ShiningFontView(Context context,AttributeSet attrs,int defStyleAttr) { super(context,attrs,defStyleAttr); } @Override protected void onSizeChanged(int w,int h,int oldw,int oldh) { super.onSizeChanged(w,h,oldw,oldh); if (mViewWidth == 0) { mViewWidth = getMeasuredWidth(); if (mViewWidth > 0) { mPaint = getPaint(); mLinearGradient = new LinearGradient(0,mViewWidth,new int[]{Color.bLUE,0xffffffff,Color.bLUE},null,Shader.TileMode.CLAMp); mPaint.setShader(mLinearGradient); mGradientMatrix = new Matrix(); } } } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); if (mGradientMatrix != null) { mTranslate += mViewWidth / 5; if (mTranslate > 2 * mViewWidth) { mTranslate = -mViewWidth; } mGradientMatrix.setTranslate(mTranslate,0); mLinearGradient.setLocalMatrix(mGradientMatriX); posTinvalidateDelayed(100); } } }
使用方式如下
<com.hz56pt.huipaotui.view.ShiningFontView//包裹起来就行 android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginLeft="@dimen/margin_10" android:layout_toRightOf="@id/iv_tips1_icon" android:text="@String/tips1" />
效果图如下
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
以上是大佬教程为你收集整理的Android自定义View实现闪耀字体效果全部内容,希望文章能够帮你解决Android自定义View实现闪耀字体效果所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。