获取场景actor:
1、通过Tag
#include "Kismet/GameplayStatics.h"
TArray<AActor*> Actors;
UGameplayStatics::GetAllActorsWithTag(GetWorld(), TEXT("actorName"), Actors);
for (AActor* Actor: Actors)
{
}
2、通过actor类型
#include "Kismet/GameplayStatics.h"
TArray<AActor*> Actors;
UGameplayStatics::GetAllActorsOfClass(GetWorld(), AActor::StaticClass(), Actors);
for (AActor* Actor : Actors)
{
}
3、通过widget类型获取指定UI
void GetUI()
{
TArray<UUserWidget*> FondWidgets;
//TSubclassOf<UMainWidget> MainWidgets;
UWidgetBlueprintLibrary::GetAllWidgetsOfClass(this, FondWidgets, UMainWidget::StaticClass(), false);
UMainWidget *ScreenWidget = Cast<UMainWidget>(FondWidgets[0]);
if(ScreenWidget->IsValidLowLevel())
{
ScreenWidget->CrossBackToCenter();
}
}