跳转至

ArcProgressView

Version 0.2.0

快速使用

Version 0.2.0

<com.ave.vastgui.tools.view.progress.ArcProgressView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

查看默认样式

进度条宽度

Version 0.2.0

通过 arc_progress_width 或者调用 mProgressWidth 可以设置进度条的宽度。

mBinding.arcProgressView.mProgressWidth = 10f.DP
<com.ave.vastgui.tools.view.progress.ArcProgressView
    ... 
    app:arc_progress_width="10dp" />
宽度20dp 宽度10dp
Width 20dp Width 10dp

端点颜色

Version 0.5.4

通过 arc_progress_startpoint_circle_color 或者调用 mStartpointCircleColor 可以设置进度条起点圆的颜色。

通过 arc_progress_endpoint_circle_color 或者调用 mEndpointCircleColor 可以设置进度条终点圆的颜色。

mBinding.arcProgressView.mStartpointCircleColor =
    ColorUtils.colorHex2Int("#e84118")

mBinding.arcProgressView.mEndpointCircleColor = 
    ColorUtils.colorHex2Int("#e84118")
<com.ave.vastgui.tools.view.progress.ArcProgressView
    ... 
    app:arc_progress_startpoint_circle_color="#e84118"
    app:arc_progress_endpoint_circle_color="#e84118" />
默认进度0 进度55 起点圆 终点圆
Progress 0 Progress 55 Startpoint circle Endpoint circle

终点端点半径

Version 0.5.5

通过 arc_progress_endpoint_circle_radius 或者调用 mEndpointCircleRadius 可以设置终点端点半径。

mBinding.arcProgressView.mEndpointCircleRadius = 
    15f.DP.coerceAtLeast(recommendedRadius())
<com.ave.vastgui.tools.view.progress.ArcProgressView
    ... 
    app:arc_progress_endpoint_circle_radius="20dp" />

Progress endpoint radius

着色器

Version 0.5.5

通过调用 mProgressShader 可以设置渐变进度条。

val colors = intArrayOf(
    ... // Color-int
)
val pos = floatArrayOf(
    ... // The relative positions [0..1] of each corresponding color in the colors array.
)
getBinding().arcProgressView.mProgressShader = LinearGradient(
    -700f, 0f, 700f, 0f,
    colors, pos,
    Shader.TileMode.CLAMP
)

Progress shader

示例代码

查看示例代码