Android 自定義環形音量調節控制項

2021-09-26 01:14:30 字數 1348 閱讀 2286

今天同樣是練習自定義view的一天,今天實現環形音量調節控制項,下滑增大音量值,上滑減小音量。

然後裡面還做了一點儀錶盤繪製的擴充套件,**在注釋裡面。

attrs.xml

circlevolumeview

public class circlevolumeview extends view 

public circlevolumeview(context context, @nullable attributeset attrs)

public circlevolumeview(context context, @nullable attributeset attrs, int defstyleattr)

@override

protected void ondraw(canvas canvas)

// canvas.drawarc(rectf, arcangle - i * (arcangle + intervalangle), arcangle, false, paint);

// }

for (int i = 0; i < maxvolume; i++)

canvas.drawarc(rectf, 360 - i * (arcangle + intervalangle), arcangle, false, paint);}}

public void addvolume()

currentvolume++;

invalidate();

}public void minusvolume()

currentvolume--;

invalidate();

}float eventy = 0;

@override

public boolean ontouchevent(motionevent event) else if (event.getaction() == motionevent.action_up) else

}return true;}}

main.xml

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:visibility="visible"

自定義view 音量調節

一attr 1.作用 attr用於約束屬性的資料型別,xml資源檔案中定義各種attr,指定attr的資料型別。在布局檔案中為自定義view的xml屬性賦值。在自定義view的建構函式中,解析xml總定義的屬性值,將其放入自定義view對應的成員變數中。2.每個attr都會在r檔案裡生成乙個id,獲...

Android自定義環形進度條

主頁面 author 有點涼了 public class mainactivity extends activity catch interruptedexception e start override public boolean oncreateoptionsmenu menu menu ov...

android 自定義 環形進度條

其實這個控制項很簡單,繼承view,在ondraw 中 繪製乙個圓和乙個圓弧即可,如下,對外暴露了乙個設定進度的方法,難點主要是數學計算 public class circleview extends view private void initvalues private void init ov...