FPropertyEditorModule& PropertyEditorModule = FModuleManager::Get().GetModuleChecked(“PropertyEditor”);
FPropertyTypeLayoutCallback PropertyTypeLayoutCallback = PropertyEditorModule.GetPropertyTypeCustomization(CachedValueProperty->GetProperty(), *CachedValueProperty.Get(), FCustomPropertyTypeLayoutMap());
if (PropertyTypeLayoutCallback.IsValid())
{
Customization = PropertyTypeLayoutCallback.GetCustomizationInstance();
}
the compiler failed to link FPropertyEditorModule::GetPropertyTypeCustomization() and FPropertyTypeLayoutCallback::GetCustomizationInstance()
I have already added “PropertyEditor” to PublicDependencyModuleNames of my plugin module’s Build.cs and calling some other functions like FPropertyEditorModule::RegisterCustomClassLayout() is ok
LNK2019: unresolved external symbol "public: class TSharedRef<class IPropertyTypeCustomization,0> __cdecl FPropertyTypeLayoutCallback::GetCustomizationInstance(void)const " (?GetCustomizationInstance@FPropertyTypeLayoutCallback@@QEBA?AV?$TSharedRef@VIPropertyTypeCustomization@@$0A@@@XZ) referenced in function ....................
LNK2019: unresolved external symbol "public: struct FPropertyTypeLayoutCallback __cdecl FPropertyEditorModule::GetPropertyTypeCustomization(class FProperty const *,class IPropertyHandle const &,class TMap<class FName,struct FPropertyTypeLayoutCallbackList,class FDefaultSetAllocator,struct TDefaultMapHashableKeyFuncs<class FName,struct FPropertyTypeLayoutCallbackList,0> > const &)" (?GetPropertyTypeCustomization@FPropertyEditorModule@@QEAA?AUFPropertyTypeLayoutCallback@@PEBVFProperty@@AEBVIPropertyHandle@@AEBV?$TMap@VFName@@UFPropertyTypeLayoutCallbackList@@VFDefaultSetAllocator@@U?$TDefaultMapHashableKeyFuncs@VFName@@UFPropertyTypeLayoutCallbackList@@$0A@@@@@@Z) referenced in function ....................