BaseBeautyState 是 AtomicXCore 中负责管理人像基础美颜效果的模块。通过它,您可以轻松为您的直播或通话应用添加自然的美颜效果。BaseBeautyState 的全局单例,并监听对应数据来实时获取当前的美颜参数状态。useBaseBeautyState 来获取当前实例。BaseBeautyState 中的响应式数据来驱动 UI 的更新。import { useEffect } from 'react';import { useBaseBeautyState } from 'react-native-tuikit-atomic-x/lib/module/atomic-x/state/BaseBeautyState';// 1. 获取 BaseBeautyState 的实例const { smoothLevel, whitenessLevel, ruddyLevel } = useBaseBeautyState();// 2. 监听 smoothLevel、whitenessLevel、ruddyLevel 的实时变更,用于驱动 UI 变更useEffect(() => {console.log('smoothLevel:', smoothLevel);}, [smoothLevel]);useEffect(() => {console.log('whitenessLevel:', whitenessLevel);}, [whitenessLevel]);useEffect(() => {console.log('ruddyLevel:', ruddyLevel);}, [ruddyLevel]);
[0, 9],其中 0 表示关闭效果,9 表示效果最明显。您需要将 UI 控件的值映射到 0 - 9 的范围。setSmoothLevel、setWhitenessLevel、setRuddyLevel 来设置磨皮、美白、红润的强度。import { useBaseBeautyState } from 'react-native-tuikit-atomic-x/lib/module/atomic-x/state/BaseBeautyState';// 获取 BaseBeautyState 的实例const { setSmoothLevel, setWhitenessLevel, setRuddyLevel } = useBaseBeautyState();// 设置磨皮(参数范围 0-9)const handleSetSmooth = (smoothLevel) => {setSmoothLevel({ smoothLevel });};// 设置美白(参数范围 0-9)const handleSetWhiteness = (whitenessLevel) => {setWhitenessLevel({ whitenessLevel });};// 设置红润(参数范围 0-9)const handleSetRuddy = (ruddyLevel) => {setRuddyLevel({ ruddyLevel });};
setSmoothLevel、setWhitenessLevel、setRuddyLevel 并将参数设置为 0。import { useBaseBeautyState } from 'react-native-tuikit-atomic-x/lib/module/atomic-x/state/BaseBeautyState';// 获取 BaseBeautyState 的实例const { setSmoothLevel, setWhitenessLevel, setRuddyLevel } = useBaseBeautyState();// 重置美颜效果const handleReset = () => {setSmoothLevel({ smoothLevel: 0 });setWhitenessLevel({ whitenessLevel: 0 });setRuddyLevel({ ruddyLevel: 0 });};
0 到 9 之间的 float 值)。文档反馈