Android Textview實(shí)現(xiàn)顏色漸變滾動(dòng)效果
本文實(shí)例為大家分享了Android顏色漸變滾動(dòng)展示的具體代碼,供大家參考,具體內(nèi)容如下
public class FlashTextView extends android.support.v7.widget.AppCompatTextView {
private Paint mPaint;
private int mViewWidth;
private LinearGradient mLinearGradient;
private Matrix mGradientMatrix;
private int mTransalte;
public FlashTextView(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
@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();//獲得當(dāng)前繪制的Paint對(duì)象
mLinearGradient = new LinearGradient(
0,//漸變起始點(diǎn)x坐標(biāo)
0,//漸變起始點(diǎn)y坐標(biāo)
mViewWidth,//漸變結(jié)束點(diǎn)x點(diǎn)坐標(biāo)
0,//漸變結(jié)束點(diǎn)y坐標(biāo)
new int[]{
Color.BLUE, 0xffffffff,
Color.BLUE,Color.RED,Color.YELLOW},//顏色的int數(shù)組
null,//相對(duì)位置的顏色數(shù)組,可為null, 若為null,可為null,顏色沿漸變線均勻分布
Shader.TileMode.MIRROR);//平鋪模式
mPaint.setShader(mLinearGradient);//給這個(gè)paint設(shè)置linearFradient屬性
mGradientMatrix = new Matrix();
}
}
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if (mGradientMatrix != null) {
mTransalte += mViewWidth / 5;
if (mTransalte > 2 * mViewWidth) {
mTransalte -= mViewWidth;
}
mGradientMatrix.setTranslate(mTransalte, 0);
mLinearGradient.setLocalMatrix(mGradientMatrix);//通過(guò)矩陣的方式不斷平移產(chǎn)生漸變效果
postInvalidateDelayed(100);
}
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android使用TransitionDrawable漸變切換多張圖片
- Android實(shí)現(xiàn)顏色漸變動(dòng)畫(huà)效果
- Android?App頁(yè)面滑動(dòng)標(biāo)題欄顏色漸變?cè)斀?/a>
- Android簡(jiǎn)單實(shí)現(xiàn)一個(gè)顏色漸變的ProgressBar的方法
- Android 微信6.1 tab欄圖標(biāo)和字體顏色漸變的實(shí)現(xiàn)
- android中實(shí)現(xiàn)背景圖片顏色漸變方法
- Kotlin使用TransitionDrawable實(shí)現(xiàn)顏色漸變效果流程講解
相關(guān)文章
Android 用RxBinding與RxJava2實(shí)現(xiàn)短信驗(yàn)證碼倒計(jì)時(shí)功能
這篇文章主要介紹了Android 用RxBinding與RxJava2實(shí)現(xiàn)短信倒計(jì)時(shí)功能示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10
Android 登錄Web 時(shí)對(duì)cookie 處理
本文主要介紹 Android登錄web時(shí)對(duì)cookie的處理方法,這里cookie 的讀寫(xiě)做了詳細(xì)介紹,并附有代碼進(jìn)行講解,希望能幫到有需要的同學(xué)2016-07-07
Android自定義ScrollView實(shí)現(xiàn)阻尼回彈
這篇文章主要為大家詳細(xì)介紹了Android自定義ScrollView實(shí)現(xiàn)阻尼回彈,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
Android編程使用Service實(shí)現(xiàn)Notification定時(shí)發(fā)送功能示例
這篇文章主要介紹了Android編程使用Service實(shí)現(xiàn)Notification定時(shí)發(fā)送功能,涉及Android服務(wù)Service控制通知的發(fā)送功能相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
Android自定義ViewGroup實(shí)現(xiàn)帶箭頭的圓角矩形菜單
這篇文章主要為大家詳細(xì)介紹了Android自定義ViewGroup帶箭頭的圓角矩形菜單實(shí)現(xiàn)方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-07-07
Android優(yōu)化之啟動(dòng)頁(yè)去黑屏實(shí)現(xiàn)秒啟動(dòng)
本文的內(nèi)容主要是講Android啟動(dòng)頁(yè)優(yōu)化,去黑屏實(shí)現(xiàn)秒啟動(dòng)的功能,有需要的小伙伴們可以參考學(xué)習(xí)。2016-08-08
Android編程實(shí)現(xiàn)全局獲取Context及使用Intent傳遞對(duì)象的方法詳解
這篇文章主要介紹了Android編程實(shí)現(xiàn)全局獲取Context及使用Intent傳遞對(duì)象的方法,結(jié)合實(shí)例形式分析了Android全局Context的獲取及Intent傳遞對(duì)象的具體操作方法,需要的朋友可以參考下2017-08-08
Flutter?Widget之NavigationBar使用詳解
這篇文章主要為大家介紹了Flutter?Widget之NavigationBar使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12

