跳到主要内容

翻译模块的回调(TranslatorResultObserver)

如果您使用的是 Unity 引擎,请参见 Unity SDK 的 TranslatorResultObserver

注册 Player Network SDK 翻译模块的回调,游戏需要注册回调函数进行处理。更多关于回调数据结构,请参见 BaseResult

注意

强烈建议游戏在应用启动函数中进行注册。

函数定义

C++ 事件处理法(V1.17 及以上)

//配置回调
void SetTranslatorResultObserver(FINTLTranslatorEvent& callback);
//获取回调
FINTLTranslatorEvent& GetTranslatorResultObserver();

Unreal Engine 事件处理法

UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "INTLSDKObserver")
void OnTranslatorResult(FINTLTranslatorResult ret);
virtual void OnTranslatorResult_Implementation(FINTLTranslatorResult ret) {};

代码示例

C++ 事件处理法(V1.17 及以上)

//配置回调
FINTLTranslatorEvent translatorEvents;
translatorEvents.AddUObject(this, &OnTranslatorResult_Implementation);
UINTLSDKAPI::SetTranslatorResultObserver(translatorEvents);
//清除回调
UINTLSDKAPI::GetTranslatorResultObserver().Clear();
void OnTranslatorResult_Implementation(FINTLTranslatorResult ret)
{
UE_LOG(LogTemp, Warning, TEXT("MethodID: %d"), ret.MethodId);
}

Unreal Engine 事件处理法

void OnTranslatorResult_Implementation(FINTLTranslatorResult ret)
{
UE_LOG(LogTemp, Warning, TEXT("MethodID: %d"), ret.MethodId);
}