BaseBeautyStore

简介

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

功能特性

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

可订阅数据

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

API 列表

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

获取实例

shared

获取单例实例。

美颜调节

setSmoothLevel

设置磨皮级别
public func setSmoothLevel(smoothLevel: Float) {
fatalError("\(#function) must be overridden by subclass")
}
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
smoothLevel
Float
必填
磨皮级别,取值范围 [0, 9];0 表示关闭,9 表示效果最明显。

setWhitenessLevel

设置美白级别
public func setWhitenessLevel(whitenessLevel: Float) {
fatalError("\(#function) must be overridden by subclass")
}
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
whitenessLevel
Float
必填
美白级别,取值范围 [0, 9];0 表示关闭,9 表示效果最明显。

setRuddyLevel

设置红润级别
public func setRuddyLevel(ruddyLevel: Float) {
fatalError("\(#function) must be overridden by subclass")
}
版本信息
从 3.5 版本开始支持。
参数说明
参数名
类型
是否必填
描述
ruddyLevel
Float
必填
红润级别,取值范围 [0, 9];0 表示关闭,9 表示效果最明显。

reset

将所有美颜参数(磨皮、美白、红润)重置为默认关闭状态(值为0)。
public func reset() {
fatalError("\(#function) must be overridden by subclass")
}
版本信息
从 3.5 版本开始支持。

数据结构

BaseBeautyState

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

使用示例

// 获取单例实例
let store = BaseBeautyStore.shared

// 订阅状态变化
store.state.subscribe { state in
print("磨皮级别: \(state.smoothLevel)")
print("美白级别: \(state.whitenessLevel)")
print("红润级别: \(state.ruddyLevel)")
}

// 设置美颜效果
store.setSmoothLevel(smoothLevel: 5)
store.setWhitenessLevel(whitenessLevel: 3)
store.setRuddyLevel(ruddyLevel: 2)

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