跳转至

ui_circle_progress

ui_circle_progress 模块提供圆形进度条组件,支持环形区域内扇形填充式进度显示。

Class Summary

OHOS::UICircleProgress

表示一个圆形进度条,用于设置起始角度、终止角度、范围和当前值来显示圆形进度。

  • 构造:无
  • 成员函数:

    接口名称 功能简述
    GetViewType 获取视图类型
    OnPreDraw 绘制前判断是否需要绘制
    OnDraw 执行圆形进度条的绘制
    SetCenterPosition 设置圆形进度条圆心坐标
    GetCenterPosition 获取圆形进度条圆心坐标
    SetRadius 设置圆形进度条外半径
    GetRadius 获取圆形进度条外半径
    SetStartAngle 设置圆形进度条起始角度
    GetStartAngle 获取圆形进度条起始角度
    SetEndAngle 设置圆形进度条终止角度
    GetEndAngle 获取圆形进度条终止角度
    SetProgressImagePosition 设置前景图片相对于视图的坐标
    SetBackgroundImagePosition 设置背景图片相对于视图的坐标
    SetLineColor 设置圆形进度条前景色
  • 使用包含头文件:#include "components/ui_circle_progress.h"

  • 声明头文件:middleware/services/gui/uikit/ui/interfaces/kits/components/ui_circle_progress.h
  • 公有运算符:无
  • 继承关系:UIAbstractProgress
  • 嵌套类型:无
  • 模板形参:无

Functions

OHOS::UICircleProgress

GetViewType

UIViewType GetViewType() const override

功能说明

  • 核心用途:获取当前视图的类型标识
  • 返回值为 UI_CIRCLE_PROGRESS,标识该视图为圆形进度条类型
  • 该函数为 const 成员函数,不修改对象状态

返回值

  • 返回类型:UIViewType

返回视图类型标识

返回值 触发场景
UI_CIRCLE_PROGRESS 当前对象为圆形进度条

OnPreDraw

bool OnPreDraw(Rect& invalidatedArea) const override

功能说明

  • 核心用途:在绘制前判断是否需要执行绘制操作
  • 固定返回 false,表示该视图始终需要执行绘制
  • 该函数为 const 成员函数,不修改对象状态

入参

名称 参数类型 详细说明 约束取值范围
invalidatedArea Rect& 需要重绘的无效区域 有效的矩形区域

返回值

  • 返回类型:bool

返回是否跳过绘制

返回值 触发场景
false 始终需要执行绘制

OnDraw

void OnDraw(BufferInfo& gfxDstBuffer, const Rect& invalidatedArea) override

功能说明

  • 核心用途:执行圆形进度条的绘制操作
  • 将圆形进度条渲染到指定的图形目标缓冲区
  • 该函数为重写基类的虚函数,在绘制流程中被框架调用

入参

名称 参数类型 详细说明 约束取值范围
gfxDstBuffer BufferInfo& 图形目标缓冲区,绘制内容的输出目标 有效的缓冲区对象
invalidatedArea const Rect& 需要重绘的无效区域 有效的矩形区域

SetCenterPosition

void SetCenterPosition(int16_t x, int16_t y)

功能说明

  • 核心用途:设置圆形进度条的圆心坐标
  • 圆心坐标是相对于视图的位置
  • 默认值为 x=0, y=0

入参

名称 参数类型 详细说明 约束取值范围
x int16_t 圆心的 x 坐标 int16_t 取值范围
y int16_t 圆心的 y 坐标 int16_t 取值范围

GetCenterPosition

Point GetCenterPosition() const

功能说明

  • 核心用途:获取圆形进度条的圆心坐标
  • 返回的圆心坐标是相对于视图的位置
  • 该函数为 const 成员函数,不修改对象状态

返回值

  • 返回类型:Point

返回圆心坐标

返回值 触发场景
Point 对象 包含圆心的 x、y 坐标值

SetRadius

void SetRadius(uint16_t radius)

功能说明

  • 核心用途:设置圆形进度条的外半径
  • 半径值决定了圆形进度条的尺寸大小
  • 需结合视图尺寸合理设置半径值

入参

名称 参数类型 详细说明 约束取值范围
radius uint16_t 圆形进度条的外半径 uint16_t 取值范围

GetRadius

uint16_t GetRadius() const

功能说明

  • 核心用途:获取圆形进度条的外半径
  • 返回当前设置的外半径值
  • 该函数为 const 成员函数,不修改对象状态

返回值

  • 返回类型:uint16_t

返回外半径值

返回值 触发场景
uint16_t 值 当前圆形进度条的外半径

SetStartAngle

void SetStartAngle(int16_t startAngle)

功能说明

  • 核心用途:设置圆形进度条的起始角度
  • 12 点钟方向为 0 度,3 点钟方向为 90 度
  • 若起始角度小于终止角度,进度条为顺时针方向;否则为逆时针方向
  • 起始角度与终止角度差值超过 360 度时,将创建完整圆形进度条

入参

名称 参数类型 详细说明 约束取值范围
startAngle int16_t 起始角度,单位为度 int16_t 取值范围,默认值为 0

GetStartAngle

int16_t GetStartAngle() const

功能说明

  • 核心用途:获取圆形进度条的起始角度
  • 返回当前设置的起始角度值
  • 该函数为 const 成员函数,不修改对象状态

返回值

  • 返回类型:int16_t

返回起始角度

返回值 触发场景
int16_t 值 当前圆形进度条的起始角度,单位为度

SetEndAngle

void SetEndAngle(int16_t endAngle)

功能说明

  • 核心用途:设置圆形进度条的终止角度
  • 12 点钟方向为 0 度,3 点钟方向为 90 度
  • 若起始角度小于终止角度,进度条为顺时针方向;否则为逆时针方向
  • 起始角度与终止角度差值超过 360 度时,将创建完整圆形进度条

入参

名称 参数类型 详细说明 约束取值范围
endAngle int16_t 终止角度,单位为度 int16_t 取值范围,默认值为 360

GetEndAngle

int16_t GetEndAngle() const

功能说明

  • 核心用途:获取圆形进度条的终止角度
  • 返回当前设置的终止角度值
  • 该函数为 const 成员函数,不修改对象状态

返回值

  • 返回类型:int16_t

返回终止角度

返回值 触发场景
int16_t 值 当前圆形进度条的终止角度,单位为度

SetProgressImagePosition

void SetProgressImagePosition(int16_t x, int16_t y)

功能说明

  • 核心用途:设置圆形进度条前景图片相对于视图的坐标
  • 坐标值会自动叠加当前样式的左内边距和边框宽度
  • 默认值为 x=0, y=0

入参

名称 参数类型 详细说明 约束取值范围
x int16_t 前景图片的 x 坐标 int16_t 取值范围
y int16_t 前景图片的 y 坐标 int16_t 取值范围

SetBackgroundImagePosition

void SetBackgroundImagePosition(int16_t x, int16_t y)

功能说明

  • 核心用途:设置圆形进度条背景图片相对于视图的坐标
  • 坐标值会自动叠加当前样式的左内边距和边框宽度
  • 默认值为 x=0, y=0

入参

名称 参数类型 详细说明 约束取值范围
x int16_t 背景图片的 x 坐标 int16_t 取值范围
y int16_t 背景图片的 y 坐标 int16_t 取值范围

SetLineColor

void SetLineColor(ColorType color)

功能说明

  • 核心用途:设置圆形进度条的前景色
  • 通过修改前景样式的线条颜色属性实现
  • 该颜色用于进度条前景线的绘制

入参

名称 参数类型 详细说明 约束取值范围
color ColorType 前景颜色值 有效的 ColorType 颜色值