Skip to content

Commit dfd5c03

Browse files
committed
fix(UGUICodeGenerator): 公开类和方法并添加预制体验证
公开 UGUICodeGenerator 类及其 Generate 方法以增强可访问性。 在 Generate 方法中添加预制体类型检查,确保仅对有效的 UGUI 预制体执行操作,防止错误使用。
1 parent e09c13d commit dfd5c03

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

Editor/UGUICodeGenerator.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ namespace GameFrameX.UI.UGUI.Editor
4848
/// <summary>
4949
/// UGUI代码生成器,用于自动生成UI代码文件
5050
/// </summary>
51-
internal static class UGUICodeGenerator
51+
public static class UGUICodeGenerator
5252
{
5353
/// <summary>
5454
/// 生成UI代码的菜单项
@@ -81,8 +81,14 @@ static void Code()
8181
/// 生成UI代码的主要方法
8282
/// </summary>
8383
/// <param name="selectedObject">选中的游戏对象</param>
84-
internal static void Generate(GameObject selectedObject)
84+
public static void Generate(GameObject selectedObject)
8585
{
86+
if (PrefabUtility.GetPrefabAssetType(selectedObject) != PrefabAssetType.NotAPrefab)
87+
{
88+
Debug.LogError("请选择一个有效的UGUI预制体进行操作");
89+
return;
90+
}
91+
8692
var assetPath = AssetDatabase.GetAssetPath(selectedObject);
8793

8894
if (assetPath.IsNullOrWhiteSpace())

0 commit comments

Comments
 (0)