BaseBeautyStore

简介

基础美颜功能通过简单易用的 API 实现实时美颜效果调节。BaseBeautyStore 提供了一套完整的接口来管理美颜效果的设置和状态订阅。
说明:
美颜状态更新通过 baseBeautyState 发布者传递。订阅它以接收有关美颜效果级别的实时更新。

功能特性

磨皮效果:支持 0-9 级别的磨皮效果调节。
美白效果:支持 0-9 级别的美白效果调节。
红润效果:支持 0-9 级别的红润效果调节。
状态订阅:实时订阅美颜状态变化,同步 UI 显示与实际效果。

可订阅数据

BaseBeautyState 的字段描述如下:
属性名
类型
描述
smoothLevel
ValueListenable<double>
磨皮级别,取值范围 [0-9];0 表示关闭,9 表示效果最明显。
whitenessLevel
ValueListenable<double>
美白级别,取值范围 [0-9];0 表示关闭,9 表示效果最明显。
ruddyLevel
ValueListenable<double>
红润级别,取值范围 [0-9];0 表示关闭,9 表示效果最明显。

API 列表

函数名
描述
获取单例实例。
设置磨皮级别。
设置美白级别。
设置红润级别。
重置为默认状态。

获取实例

shared

获取单例实例。

美颜调节

setSmoothLevel

设置磨皮级别
void setSmoothLevel(double smoothLevel);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
smoothLevel
double
必填
磨皮级别,取值范围 [0, 9];0 表示关闭,9 表示效果最明显。

setWhitenessLevel

设置美白级别
void setWhitenessLevel(double whitenessLevel);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
whitenessLevel
double
必填
美白级别,取值范围 [0, 9];0 表示关闭,9 表示效果最明显。

setRuddyLevel

设置红润级别
void setRuddyLevel(double ruddyLevel);
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
ruddyLevel
double
必填
红润级别,取值范围 [0, 9];0 表示关闭,9 表示效果最明显。

reset

将所有美颜参数(磨皮、美白、红润)重置为默认关闭状态(值为0)。
void reset();
版本信息
从 3.5 版本开始支持。

数据结构

BaseBeautyState

基础美颜状态,管理磨皮、美白、红润等美颜效果的级别数据。支持订阅以同步 UI 显示与实际效果。
属性
类型
说明
smoothLevel
ValueListenable<double>
磨皮级别,取值范围 [0-9];0 表示关闭,9 表示效果最明显。
whitenessLevel
ValueListenable<double>
美白级别,取值范围 [0-9];0 表示关闭,9 表示效果最明显。
ruddyLevel
ValueListenable<double>
红润级别,取值范围 [0-9];0 表示关闭,9 表示效果最明显。

使用示例

// 获取单例实例
final store = BaseBeautyStore.shared;

// 定义监听器
late final VoidCallback smoothLevelListener = _onSmoothLevelChanged;
late final VoidCallback whitenessLevelListener = _onWhitenessLevelChanged;
late final VoidCallback ruddyLevelListener = _onRuddyLevelChanged;

void _onSmoothLevelChanged() {
print('磨皮级别: ${store.baseBeautyState.smoothLevel.value}');
}

void _onWhitenessLevelChanged() {
print('美白级别: ${store.baseBeautyState.whitenessLevel.value}');
}

void _onRuddyLevelChanged() {
print('红润级别: ${store.baseBeautyState.ruddyLevel.value}');
}

// 订阅状态变化
store.baseBeautyState.smoothLevel.addListener(smoothLevelListener);
store.baseBeautyState.whitenessLevel.addListener(whitenessLevelListener);
store.baseBeautyState.ruddyLevel.addListener(ruddyLevelListener);

// 设置美颜效果
store.setSmoothLevel(5.0);
store.setWhitenessLevel(3.0);
store.setRuddyLevel(2.0);

// 重置所有美颜效果
store.reset();

// 取消订阅
store.baseBeautyState.smoothLevel.removeListener(smoothLevelListener);
store.baseBeautyState.whitenessLevel.removeListener(whitenessLevelListener);
store.baseBeautyState.ruddyLevel.removeListener(ruddyLevelListener);