雷達掃瞄View的簡單實現

2022-09-23 11:33:08 字數 775 閱讀 9105

雷達掃瞄view的簡單實現

關於雷達掃瞄我的思路是

通過sweepgradient來渲染 matrix旋轉 view重繪

來實現的。

首先我們來自定乙個scanview繼承自view,初始化畫筆

private void initpaint() 然後重寫onmeasure()方法,因為我們畫的雷達掃瞄是圓形的,要判斷view的高度和寬度,選取最小的昨晚圓的直徑,然後mselctorpaint渲染。

@override

protected void onmeasure(int widthmeasurespec, int heightmeasurespec) 再重寫ondraw()方法開始畫圖

@override

protected void ondraw(canvas canvas)

//畫漸變圓

canvas.drawcircle(mdiameter / 2.0f, mdiameter / 2.0f, mdiameter / 2.0f, mselctorpaint);

super.ondraw(canvas);

}最後開始matrix旋轉,matrix旋轉不能在主線程進行,需要另起執行緒

@override

public void run()

});try catch (interruptedexception e)

}}activity的布局

在activity呼叫scanview.startscan()方法開始雷達掃瞄,stopscan()方法停止掃瞄。

Android自定義View實現雷達掃瞄動畫

前言 類似社交軟體的雷達搜尋 mainactivity public class mainactivity extends activity else classname radarsweep description 雷達掃瞄動畫重新整理執行緒類 private class radarsweep i...

iOS 雷達掃瞄效果 實現

1 rotationanimation.removedoncompletion no 23 rotationanimation.fillmode kcafillmodeforwards fillmode的作用就是決定當前物件過了非active時間段的行為.比如動畫開始之前,動畫結束之後。如果是乙個動...

Andrew自定義元件簡單實現 View

所有的布局類和檢視類都是繼承view類。當android系統提供的一些view子類不能滿足需求的時候,就需要自定義個view子類。方法1 直接繼承view類 方法2 繼承view類的乙個子類,例如 如果需要乙個帶有影象的textview類,自定義類就可以直接去繼承textview類。myview類 ...