Paint高級(jí)渲染之實(shí)現(xiàn)雷達(dá)掃描效果

上次我們使用Paint的RadialGradient實(shí)現(xiàn)了類似水波紋渲染的效果,這次我們來個(gè)更炫酷的,使用shader的梯度渲染來實(shí)現(xiàn)雷達(dá)掃描效果.這種場景之前迅雷的手機(jī)版好像有過這種效果,就是搜索附近的片子之類的.廢話不多說,老樣子,咱先看效果.這玩意不好錄,實(shí)際效果比現(xiàn)在看到的好得多,大家可以自己嘗試一下.


還是老樣子,自定義控件繼承自View重寫構(gòu)造方法,我們可能要自定義一些屬性.包括,雷達(dá)的半徑,有多少個(gè)環(huán)形,環(huán)形的顏色,以及梯度漸變的顏色起始值以及末尾值.所以在含有兩個(gè)參數(shù)的構(gòu)造中我們將這些值取出來:



我們對自定義控件做一個(gè)測量,確定我們要畫的環(huán)形的寬高.


第一步,先畫環(huán)形(無梯度漸變),也就是雷達(dá)的背景:


第二步,畫雷達(dá)掃描效果,給最大的圓環(huán)加入梯度渲染效果:


第三步,就是動(dòng)畫了,讓我們的掃描效果動(dòng)起來:

我們使用Handler來刷新效果:



這樣,一個(gè)雷達(dá)掃描效果就出來了.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容